我们有一个叫做core-services的项目。它构建了三个罐子:
core-services-client包含所有客户端类core-services-server:包含所有服务器和客户端类core-services-test:包含所有junit类现在,我默认构建core-services-server jar,然后使用程序集构建client和test jar。如果开发人员希望使用客户机或测试jars,则必须指定分类器。但是,当他们想依赖服务器jar时,他们不指定分类器。
这将导致开发人员在真正应该使用客户端jar时只使用服务器jar。我想构建这三个jars,以便在将它们用作依赖项时需要一个分类器。但是,当指定项目时,我不能这样做:
<groupId>com.vegicorp</groupId>
<artifactId>core-services</artifactId>
<version>1.0.0</version>
<classifier>server</classifier>
<packaging>jar</packaging>我知道我可以使用<finalName>来调用默认的jar core-services-server,但是我想确保如果开发人员依赖于core-services,他们必须说他们是想要服务器、客户机还是测试类。如果我只是重命名它,默认情况下,它们将得到服务器jar。
如何指定默认jar有一个server分类器
发布于 2016-11-11 15:39:50
我想通了。我可以将默认分类器放入pom.xml中的pom.xml配置中。
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<!-- All other configuration information is in the parent pom -->
<configuration>
<classifier>server</classifier>
</configuration>
</plugin>当我执行mvn deploy时,我会收到一个警告,即No primary artifact to deploy, deploying attached artifacts instead和所有三个jars都部署了分类器。
https://stackoverflow.com/questions/40551003
复制相似问题