Maven 分类器空罐子
Maven classifier empty jars
假设我们有多模块 maven 项目:
parent
|-module-a-jar
|-module-b-jar
|-web-module-c-war
有为父级指定的公共分类 pom.xml:
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.6</version>
<configuration>
<classifier>${my.project.classifier}</classifier>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.6</version>
<configuration>
<classifier>${my.project.classifier}</classifier>
</configuration>
</plugin>
</plugins>
</pluginManagement>
假设我使用
构建项目
mvn clean package -Dmy.project.classifier=NIGHTLY
构建后 web-module-c-war 包含空文件夹而不是 jar 文件:
web-module-c-war
|-WEB-INF
|-lib
|-module-a-jar
|-module-a-jar
你能告诉我如何解决这个问题吗?为什么会这样?
如果我从 maven-jar-plugin 配置中删除 classifier,它似乎工作正常。
谢谢
为什么不做这个呢?
pom web-module-c-war :
<groupId>xxxxx</groupId>
<artifactId>xxxx</artifactId>
<version>1.0.0-SNAPSHOT</version>
<classifier>${my.project.classifier}</classifier>
..
..
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>module-a-jar</artifactId>
<version>${project.version}</version>
<classifier>${my.project.classifier}</classifier>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>module-b-jar</artifactId>
<version>${project.version}</version>
<classifier>${my.project.classifier}</classifier>
</dependency>
假设我们有多模块 maven 项目:
parent
|-module-a-jar
|-module-b-jar
|-web-module-c-war
有为父级指定的公共分类 pom.xml:
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.6</version>
<configuration>
<classifier>${my.project.classifier}</classifier>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.6</version>
<configuration>
<classifier>${my.project.classifier}</classifier>
</configuration>
</plugin>
</plugins>
</pluginManagement>
假设我使用
构建项目mvn clean package -Dmy.project.classifier=NIGHTLY
构建后 web-module-c-war 包含空文件夹而不是 jar 文件:
web-module-c-war
|-WEB-INF
|-lib
|-module-a-jar
|-module-a-jar
你能告诉我如何解决这个问题吗?为什么会这样?
如果我从 maven-jar-plugin 配置中删除 classifier,它似乎工作正常。
谢谢
为什么不做这个呢?
pom web-module-c-war :
<groupId>xxxxx</groupId> <artifactId>xxxx</artifactId> <version>1.0.0-SNAPSHOT</version> <classifier>${my.project.classifier}</classifier> .. .. <dependency> <groupId>${project.groupId}</groupId> <artifactId>module-a-jar</artifactId> <version>${project.version}</version> <classifier>${my.project.classifier}</classifier> </dependency> <dependency> <groupId>${project.groupId}</groupId> <artifactId>module-b-jar</artifactId> <version>${project.version}</version> <classifier>${my.project.classifier}</classifier> </dependency>