因此,大多数 Java 资源在谈到包时都会提到 com.yourcompany.project 设置。但是,我不在公司工作,也没有网站。有没有通用的命名约定?也许是电子邮件地址?

有帮助吗?

解决方案

使用像'bernard'这样的顶级域名或其他独特的域名。重要的一点是,域名是唯一的,以便您避免冲突,而不是从一个真正的互联网顶级域名(如org或com)开始。 E.g。

import java.util.*;
import bernard.myProject.*;
import org.apache.commons.lang.*;

其他提示

如果您创建一个开源项目,可以使用Sourceforge注册它并使用net.sourceforge.myproject。这在许多Java项目中很常见。一个例子是PMD http://pmd.sourceforge.net/

为什么不注册域名?

它们相当便宜,这样做可以保证您不会与其他任何人发生冲突(或者至少让您满意,如果确实发生冲突,则其他人将不得不重写他们的代码)。

要么注册您自己的名字,要么尝试编造一个您以后可以用作业务基础的名称。

  • bernard.surname.net
  • madeupname.net

这将花费您每年不到 10 英镑。

就我个人而言,我会选择虚构的名字方法,因为它可能看起来更专业(除非你选择一些非常奇怪的东西)。

另一个优点是,许多域名都具有电子邮件功能,为您提供比 bernard.surname@hotmail.com 更好的电子邮件地址。

网站上找到关于此主题的好建议: <!>;使用您的电子邮件地址开始您的软件包名称,反之。[...]或者,在一个网站上托管您的代码,这将为您提供一小部分域名。<!>

请注意<!>“反向域名<!>”;事情只是一个惯例:很有用,因为如果每个人都喜欢它,它肯定会避免冲突,但你不必遵循它。

只需选择一个您可以合理确定其他人不会使用的名称,以及未被任何人注册为商标的名称 - 因为这是您实际遇到法律麻烦的一种方式。

这意味着使用某种<!>“subdomain <!>”是一个相当糟糕的主意。您正在使用的免费服务,如deviantart或dyndns或免费邮件服务!因为这些域中的大多数(如果不是全部)都是商标用语,并且如果您的项目得到广泛分发,则可能被视为违反商标。仅仅因为它们允许您将该名称用作电子邮件地址(或其他任何内容)并不意味着您可以将其用于其他任何事实 - 事实上,他们的EULA几乎肯定会将使用限制在一个目的之内。

您还可以做的是通过DynDns(或其中一个等价物)之类的服务注册域(实际上是子域),然后使用该域名。您将是唯一的控制器,它免费且易于维护。目前,他们可以选择88个顶级域名(2008年10月)。 dyndns 动态DNS服务

对于我自己的个人工作,当我没有命名空间时,我会选择像org.<myname>.*

这样简单的东西

我曾经在几家不同的公司写过家庭java课程。通常他们只是com.blah.blah.blah而不考虑它背后是否有真正的域名。

恕我直言,最好不要依赖任何外部信息,例如托管服务提供商或公司(可能会发布到开源社区),因为不太需要打包级别的重构,特别是在框架的情况下和图书馆。我建议您仔细,明确地选择项目名称,然后使用组织。<!> lt;项目名称<!> gt;作为根包。

许多人拥有自己的网站和相对独特的名称(或登录名)。

如果你的名字是Bernard Something,你可能拥有BernardSomething.com, 使com.bernardsomething.xxxx(或com.bsomething.xxx)成为个人代码的合法包名IMHO。

话虽如此,如果您的项目名称是唯一的,您可能希望在此之后命名该包。

当然,如果你还没有拥有它,请在你的名字后面获取域名!

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top