Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Maven嵌套模块-命名约定/最佳实践_Java_Maven_Nested_Naming Conventions_Hierarchy - Fatal编程技术网

Java Maven嵌套模块-命名约定/最佳实践

Java Maven嵌套模块-命名约定/最佳实践,java,maven,nested,naming-conventions,hierarchy,Java,Maven,Nested,Naming Conventions,Hierarchy,我只是有一个小问题,我没有找到答案(或者答案很旧,我不知道是否仍然准确) 假设我有一个类似web的应用程序,我想使用maven构建它 从逻辑上讲,我可能有如下结构: application -client -theme -ui -server -service-1 -service-2 现在,不同的groupId和artifactId会是什么样子 是否建议/最佳做法是模块的根包名称为groupId.artifact

我只是有一个小问题,我没有找到答案(或者答案很旧,我不知道是否仍然准确)

假设我有一个类似web的应用程序,我想使用maven构建它

从逻辑上讲,我可能有如下结构:

application
    -client
        -theme
        -ui
    -server
        -service-1
        -service-2
现在,不同的groupId和artifactId会是什么样子

是否建议/最佳做法是模块的根包名称为
groupId.artifactId
? 如果是,如何处理artifactId中的破折号作为包名

根据我的简单理解,我将为单个模块(其中应用程序/客户端/服务器只是父级和聚合器POM)提供以下ID:

或者在非聚合、非父POM前面加上 应用程序名称(基本上是层次结构的“叶子”)?或者仅仅是每一个人工制品?再说一遍:那么如何处理包名呢

例如,在战争中,图书馆更容易区分

my.domain:application
my.domain.application:client
my.domain.application.client:application-theme
my.domain.application.client:application-ui
my.domain.application:server
my.domain.application.server:application-service-1
my.domain.application.server:application-service-2
这对我来说真的很困惑


提前感谢您的帮助

你可能会发现在这里的讨论很有帮助。
my.domain:application
my.domain.application:client
my.domain.application.client:application-theme
my.domain.application.client:application-ui
my.domain.application:server
my.domain.application.server:application-service-1
my.domain.application.server:application-service-2