我有以下用于创建-sources.jar
并将特定的命名jar部署到存储库的插件。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<executions>
<execution>
<id>attach-sources</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.5</version>
<configuration>
<version>${project.version}-r${buildNumber}</version>
<classifier>${env}</classifier>
<packaging>jar</packaging>
<file>${project.build.directory}/${project.build.finalName}.jar</file>
<url>${artifactory.url}/libs-release-local</url>
<repositoryId>artifactory.digiterre.com</repositoryId>
<pomFile>${project.basedir}/pom.xml</pomFile>
</configuration>
</plugin>
我希望同时部署
*-sources.jar
。我尝试添加第二个文件条目,甚至添加第二个deploy插件。我似乎已经部署了一个或其他文件。是否可以使用
deploy:deploy-file
一次部署两个版本,还是我仅为了部署源就必须建立第二个团队城市版本? 最佳答案
当您使用maven-source-plugin
时,生成的jar将自动附加到项目 Artifact (this参数的默认设置为'true'),如果您执行deploy
,它将与它一起部署。 las,无需单独配置deploy插件。
不幸的是,您不能将分类器(在您的情况下为${env}
)添加到源jar中。这就是为什么我要使用以下配置:
...
<artifactId>com.pie.mash.repo.mince-${env}</artifactId>
<version>1.18-r${buildNumber}</version>
...
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.1.2</version>
<executions>
<execution>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
另外,我在SO上找到了this问题。您可以使用此处建议的解决方法。