我正在开发一些项目(目前组织为eclipse项目)。有一个主要提供核心API和一些辅助实现和抽象类的核心项目。所有其他项目都依赖于这个项目。应用maven groupId命名约定
将项目集成到我们的Maven存储库时,我们遇到了Maven命名约定的问题。正如在SO上所讨论的,groupId通常应该是反向公司域名(com.example
)加上项目名称(com.example.foo
)。 maven命名约定为插件等子项目提供了额外的后缀(com.example.foo.plugin
)。
在我们的例子中,我们没有插件,但是核心项目提供了API的多个(主要是独立的)实现。我们当前的命名建议是:
com.example.foo
所有项目的groupId,虽然他们分成不同的Java包(com.example.foo
包含API,com.example.foo.bar
包含bar
实现)- 项目名称为的artifactId ,没有前缀参照项目(的
bar
代替foo-bar
)
关键的一点是,(虽然我们的项目被分散翻过包如上所述),他们是不是真的子-p API核心项目的主要内容。
此建议是否符合maven命名约定?
以防万一:这个问题是而不是要求有意义的答复,但对上述问题的争论性答案。
我必须诚实地说,我从来没有把这么多想法放入Maven的命名约定中:-) – kaqqao 2014-09-01 18:50:55
@kaqqao嗯,我们做:) – 2014-09-01 19:43:05