删除 Maven jar:test-jar 目标的测试分类器?
Remove tests classifier of Maven jar:test-jar goal?
我已将 maven-jar-plugin
配置如下:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<finalName>${project.artifactId}.main</finalName>
</configuration>
<executions>
<execution>
<goals>
<goal>test-jar</goal>
</goals>
<configuration>
<finalName>${project.artifactId}.tests</finalName>
</configuration>
</execution>
</executions>
</plugin>
我希望我的输出 JAR 文件被称为 ARTIFACT.main.jar
和 ARTIFACT.tests.jar
。前者有效,但后者以 ARTIFACT.tests-tests.jar
的形式出现。有什么办法可以调整上面的配置来去掉-tests
分类器吗?
不幸的是,在查看 maven-jar-plugin
源代码后,我认为无法从测试 jar 中删除 tests
分类器。
在目标 test-jar
期间调用的 execute
方法获取方法 getClassifier()
的输出以附加分类器:
File jarFile = createArchive();
String classifier = getClassifier();
if ( classifier != null )
{
projectHelper.attachArtifact( getProject(), getType(), classifier, jarFile );
}
else
{
getProject().getArtifact().setFile( jarFile );
}
和 getClassifier()
方法 returns 硬编码字符串 "tests" 用于 test-jar
目标。
我在 maven-jar-plugin JIRA 中找到了一个关于这个的 "Improvement" (MJAR-199)。欢迎为它投票!
我已将 maven-jar-plugin
配置如下:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<finalName>${project.artifactId}.main</finalName>
</configuration>
<executions>
<execution>
<goals>
<goal>test-jar</goal>
</goals>
<configuration>
<finalName>${project.artifactId}.tests</finalName>
</configuration>
</execution>
</executions>
</plugin>
我希望我的输出 JAR 文件被称为 ARTIFACT.main.jar
和 ARTIFACT.tests.jar
。前者有效,但后者以 ARTIFACT.tests-tests.jar
的形式出现。有什么办法可以调整上面的配置来去掉-tests
分类器吗?
不幸的是,在查看 maven-jar-plugin
源代码后,我认为无法从测试 jar 中删除 tests
分类器。
在目标 test-jar
期间调用的 execute
方法获取方法 getClassifier()
的输出以附加分类器:
File jarFile = createArchive();
String classifier = getClassifier();
if ( classifier != null )
{
projectHelper.attachArtifact( getProject(), getType(), classifier, jarFile );
}
else
{
getProject().getArtifact().setFile( jarFile );
}
和 getClassifier()
方法 returns 硬编码字符串 "tests" 用于 test-jar
目标。
我在 maven-jar-plugin JIRA 中找到了一个关于这个的 "Improvement" (MJAR-199)。欢迎为它投票!