我在Sun官方文档(或Sun在线教程)中读到了jar档案的虚线命名。 是否曾鼓励命名jar文件,如 com.company.project.smallestdistributable.jar ?
答案 0 :(得分:1)
通常这种情况会不时发生,因为虚线命名约定可以模拟系统中没有真正处理命名空间的命名空间。
在您的情况下,您将模拟文件系统中的“com.company.project”命名空间,其分辨率为“smallestdistributable.jar”。
我从未读过的Java文档(大约从1.2开始)曾建议使用像这样的命名系统用于JAR文件。虽然人们无法确定为什么它从未被推荐过,但人们可以猜到。早期的系统没有将虚线扩展视为名称的一部分,但有时将它们视为分类器。在最早的系统中,名称和分类器对允许的字符数有非常严格的限制,并且文件系统只允许[NAME]。[CLASSIFIER]模式。一个JAR文件(顺便说一句,它是3个字符,因为如果你想要文件名是可移植的,这是文件系统中可用的最长分类器,包含最短的分类器),它包含一个额外的句点会破坏文件系统对文件的理解,所以< / p>
com.company.project.smallestdistributable.jar
将被视为
file: com
extension: company.project.smallestdistributable.jar
除了实际上它甚至不会那么远,因为扩展不能有扩展。
我见过一些较新的项目,不关心[8]。[3]命名约定将命名空间添加到jar文件名中,但它似乎是一个新想法,而不是在这些开发区域之外明确提升的东西。