Maven artifactID命名约定的最佳实践(有限制吗?)
我的团队是Maven的新手,我们还没有找到任何关于为我们的项目选择工件的明确指导 我知道政府说人工制品应该 “您想要的任何名称,带有小写字母,没有奇怪的符号” 但是我组中的一些人希望对groupid和artifactId使用反向域名样式 基于上述指导原则以及我在中央存储库中看到的所有示例,我认为使用反向域样式的工件是没有意义的,但我无法判断这样做是否实际上是无效的,或者仅仅是不赞成的。我模模糊糊地记得读过一些关于各种存储库管理器无法有效处理包含句点(.)字符的工件的文章,但我不记得在哪里读到过&我现在找不到了Maven artifactID命名约定的最佳实践(有限制吗?),maven,naming-conventions,nexus,artifactory,archiva,Maven,Naming Conventions,Nexus,Artifactory,Archiva,我的团队是Maven的新手,我们还没有找到任何关于为我们的项目选择工件的明确指导 我知道政府说人工制品应该 “您想要的任何名称,带有小写字母,没有奇怪的符号” 但是我组中的一些人希望对groupid和artifactId使用反向域名样式 基于上述指导原则以及我在中央存储库中看到的所有示例,我认为使用反向域样式的工件是没有意义的,但我无法判断这样做是否实际上是无效的,或者仅仅是不赞成的。我模模糊糊地记得读过一些关于各种存储库管理器无法有效处理包含句点(.)字符的工件的文章,但我不记得在哪里读到过&
Maven artifactID中允许的字符有哪些规则(如果有的话)?我认为groupId类似于Java中的包名,其中artifactID类似于类名(不是很确定),但我认为与类名有关系。在Maven中,通常为模块/项目指定一个名称,尤其是artifactId
此外,我还发现了一些关于artifactId的提示。这里有一些关于这个主题的帖子: 指针
因此,在groupId和包名中使用反向dns是一个很好的做法。在artifactId中再次使用它们是不正确的。注释而不是答案,但例如Eclipse工件在名称中使用句点——我从未遇到过这一问题,至少几年没有遇到过。请看。这家伙提供正则表达式。这是一个非常好的问题!我试着自己回答。。。但是太晚了(啤酒时间胡说:D)。我将在接下来的几天内尝试(我正在度假,所以可能会很困难)。没有关系。。。如果没有直截了当的回答,我会悬赏的!这真是个好问题!谢谢大家的回复。我认为gontard实际上有最好的答案,但因为它是作为一个注释留下的,所以我无法选择它。现在有一个棘手的部分:jar的最上面的包应该对应于groupId还是groupId.CLEANUP(artifactId),例如给定groupId:org.foo,artifactId:bar-maven-plugin=>package org.foo.bar-mavenplugin.OSGi项目中使用artifactId中的groupId似乎是一种最佳实践。(示例:,)OSGi捆绑包是什么?在SpringEnterpriseBundle存储库中,所有捆绑包都显示在artifactId中,这是因为OSGi联盟的Eclipse端似乎决意违反他们没有创建的所有约定,没有明显的好处。在artifactId中包含groupId是多余的。它在OSGi中的使用似乎起源于bnd早期与maven集成的努力,当时集成的开发人员不理解或选择忽略已建立的maven命名约定。
commons math
不仅仅包含“小写字母”。列入名单似乎不完整。