没有自己域的项目的Java包命名空间

Ska*_*Rat 12 java namespaces

是否有关于如何为没有自己的域的开源项目命名包名称空间的一般经验法则?

命名空间应该是唯一的,因此选择域来处理它,但最终它并不重要,只要它们是唯一的.

现在,如果我有一个只在github上托管的项目,是否可以采取

com.github.username.projectname
Run Code Online (Sandbox Code Playgroud)

或者是相当不满意的,因为我使用的是一个我并不真正拥有的域名?

Nat*_*ger 8

在包名中有许多com.google.code和带有sourceforge的项目,因此命名空间有很多先例.

  • @Perception不会真的破坏任何东西.不是说,比如说,将所有Sun站点迁移到Oracle并且几乎不可能找到规范和论坛帖子. (5认同)
  • 当谷歌停业并且所有这些项目都移动到其他地方时会很有趣......就像Lycos一样...... (2认同)

A.H*_*.H. 8

在您的示例com.github中与您的代码没有直接关系.存储此代码(也称为托管)无关紧要,将来可能会发生变化.因此我提出了一个纯粹的项目特定名称

org.projectname
Run Code Online (Sandbox Code Playgroud)

甚至

projectname
Run Code Online (Sandbox Code Playgroud)

因为包名称不需要是域名.

哦,顺便说一句:你会找到几乎所有关于命名约定的优先事项 - 不仅仅是Java包名.但是从根本上说:在历史上,你也可以找到各种谋杀案的优先权.这是否只是因为其他人以前做过它才能让它变得可以接受?我不这么认为.