我正在使用Maven系统开发库,该库已发布在Nexus存储库中。
在联系(以及Maven构建)中,项目生成了名为jar
的最终<projectName>-<version>.jar
-这正是我想要的。
现在,我决定将库分成maven模块,因此顶级pom.xml
具有<packaging>pom</packaging>
。该构建也不产生最终的<projectName>-<version>.jar
,而是为每个模块产生<moduleName>-<version>.jar
。
我想要实现的是将项目拆分为模块,并能够生成包含已定义模块的最终<projectName>-<version>.jar
。这可能吗?
是否有可能解决迁移到Gradle的问题?
答案 0 :(得分:2)
当您决定将库分成多个模块时,这意味着您决定独立构建它们。因此,期望每个模块都创建自己的<moduleName>-<version>.jar
。
现在,当您将创建的模块用作dependencies
作为范围为compile
的较大模块时,maven会自动将它们添加到项目的lib
中。
因此,在您的情况下,您无需将包装更改为pom
,只需将模块作为依赖项添加到pom.xml
文件中,然后让maven为您创建最终的jar。
此外,如果您想使用pom
包装,那么有一个很好的问题here可能会对您有所帮助。