<build>
<finalName>llews-${project.version}-test</finalName>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-install-plugin</artifactId>
<version>2.3.1</version>
<executions>
<execution>
<id>install test</id>
<phase>install</phase>
<goals>
<goal>install-file</goal>
</goals>
<configuration>
<file>${project.build.directory}\${project.build.finalName}.jar</file>
<pomFile>${basedir}\pom.xml</pomFile>
<classifier>test</classifier>
</configuration>
</execution>
</executions>
</plugin>
</build>
答案 0 :(得分:1)
最好的方法可能是替换默认的jar插件执行,比如这个
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<executions>
<execution>
<id>default-jar</id>
<configuration>
<classifier>test</classifier>
</configuration>
</execution>
</executions>
</plugin>
这样你的默认工件就会拥有所需的分类器,默认情况下,安装和 deploy都会做正确的事情。
当然你不应该另外修改 finalName ,因为jar插件会将分类器添加到它。
注意:虽然这回答了给出的问题,但我同意Manfred Moser的看法,你想做的事情看起来并不是一个好主意。
答案 1 :(得分:0)
您不应该使用分类器来发信号通知它是一个测试工件。而不是所有的finalName hack和jar插件重新配置只需将artifactId更改为leews-test。
很明显,这是一个来自名称的测试工件,对它的依赖可以使用它而不需要分类器,所有东西都可以开箱即用。