Deployment 如何在我的maven repo中显式保存支持cobertura的JAR?
因此,我们在Jenkins中持续集成了maven构建。我们有许多模块构建,它们打包在一个组装构建中。然后,程序集构建是我们的集成测试构建的一个依赖项,它安装完整的包,启动它,运行测试,然后关闭它。我们有在模块单元测试上运行的夜间cobertura报告,但是现在我们需要来自集成测试的夜间cobertura报告。我对我们使用的为cobertura报告设置定制构建的能力感到满意Deployment 如何在我的maven repo中显式保存支持cobertura的JAR?,deployment,maven,jenkins,maven-assembly-plugin,cobertura,Deployment,Maven,Jenkins,Maven Assembly Plugin,Cobertura,因此,我们在Jenkins中持续集成了maven构建。我们有许多模块构建,它们打包在一个组装构建中。然后,程序集构建是我们的集成测试构建的一个依赖项,它安装完整的包,启动它,运行测试,然后关闭它。我们有在模块单元测试上运行的夜间cobertura报告,但是现在我们需要来自集成测试的夜间cobertura报告。我对我们使用的为cobertura报告设置定制构建的能力感到满意 问题是,我不想一直这样做,那么如何在maven存储库中区分这个jar呢?是否有某种方法可以使用描述符ref(比如带有依赖项的
问题是,我不想一直这样做,那么如何在maven存储库中区分这个jar呢?是否有某种方法可以使用描述符ref(比如带有依赖项的jar)将其放在同一个maven存储库中,但坐标略有不同?接下来的问题当然是如何让装配构建具有不同的坐标?当然,这可能是相同或相似的答案。我没有正确理解,但如果您想反复使用聚合的jar,您可以使用安装插件吗 让我们明确步骤
- 整理你的档案
- 将其安装到本地存储库
- 使用此文件
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-install-plugin</artifactId>
<version>2.3.1</version>
<executions>
<execution>
<phase>anyphase</phase>
<goals><goal>install-file</goal></goals>
<configuration>
<groupId>mygroup</groupId>
<artifactId>myartifact</artifactId>
<version>${project.version}</version>
<packaging>pom</packaging>
</configuration>
</execution>
</executions>
</plugin>
org.apache.maven.plugins
maven安装插件
2.3.1
任何阶段
安装文件
mygroup
我的神器
${project.version}
聚甲醛
然后,只要在需要的坐标下在任何地方引用您的jar即可。我不是一个真正的专业人士,但我认为您可以专门部署此artfifact(我使用ivy,并为插入仪器的jar提供了一个特殊的部署配置): 看看分类器: 使用分类器部署工件 分类器是用来描述工件的附加文本
artifact-name-1.0-bin.jar artifact-name-1.0-dev.jar
artifact-name-1.0-prod.jar
根据上述工件名称,分类器可以位于
工件的版本和扩展名
bin用于描述工件是二进制的。dev用于描述工件用于开发。
prod用于描述工件用于生产 要将分类器添加到用于部署的工件中,请设置文本 选择分类器参数
mvn deploy:deploy-file -Durl=file:///C:/m2-repo \
-DrepositoryId=some.id \
-Dfile=path-to-your-artifact-jar \
-DpomFile=path-to-your-pom.xml \
-Dclassifier=bin
保存依赖项与传递相关是什么?我的问题是否让人困惑,以至于你发布了一个完全无关的回复,或者我遗漏了什么?仅供参考,你的帖子是关于获取一个可传递依赖项,而不是保存一个。对不起,Jared:)我真的误解了。如果我理解正确,你想再次使用这个聚合罐吗?如果不是这样,请让我更清楚地帮助你。