我有一个核心'包含数据库和配置等内容的模块。我还有针对不同平台的多个插件模块,例如Eclipse,IntelliJ和Netbeans,它们依赖于核心模块。有没有办法可以用核心模块构建其中一个插件,或者同时构建所有插件并以不同的名称保存它们?这是Maven要做的事情,如果不是,有什么更适合我想做的事情吗?
答案 0 :(得分:1)
我想你可能要做的就是为你的模块创建一个父项目。使用这样的文件夹结构。
/parent
/core
/Eclipse
/IntelliJ
/NetBeans
您的父项目pom.xml
看起来像这样。
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>your.group</groupId>
<artifactId>parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>pom</packaging>
<modules>
<module>core</module>
<module>Eclipse</module>
<module>IntelliJ</module>
<module>NetBeans</module>
</modules>
</project>
您还需要在每个子模块中添加类似此代码段的内容
<parent>
<groupId>your.group</groupId>
<artifactId>parent</artifactId>
<version>whatever</version>
</parent>
一旦你这样设置,在父项目中运行mvn install
(例如)将构建所有子模块(包括核心)。从子模块中运行mvn install
将仅构建 子项。由于插件模块已经依赖于核心,它们应该已经可以工作了(不过如果你改变核心,你必须mvn install
核心,让他们自然地了解更新。