我成功地使用标签将 JAR 从 Maven 项目部署到了 Github。但是,当前配置假设 JAR 的文件名始终保持不变,但事实并非如此。当我发布新版本时,这将相应更改,因此部署将失败。
有没有办法在 YAML 文件中使用通配符?根据我在 Stackoverflow 和网络上发现的情况,YAML 不支持通配符。在不操作 .travis.yml 文件本身的情况下,我找不到其他方法来执行此操作,我想避免这种情况。
版本字符串可在pom.xml
.
当前.travis.yml:
language: java
jdk:
- openjdk7
deploy:
provider: releases
api_key:
secure: asfdsdflkjsdflkj...
file: target/helloci-1.0-SNAPSHOT.jar
on:
repo: ktk/helloci
all_branches: true
tags: true
我当然可以以某种方式编写脚本,但是 Travis CI 会更改它自己的配置文件,我不确定这 a) 是否有效,b) 是否是一个好主意。
我正在玩的回购协议:https://github.com/ktk/helloci https://github.com/ktk/helloci
解决方法是让 Maven 使用固定名称生成文件,这可以通过
<build>
<finalName>helloci</finalName>
</build>
但是,如果您不是在 travis-ci 上构建,您可能希望按照 Maven 约定保留名称。您可以通过将以下内容添加到 pom 来实现此目的:
<properties>
<finalName>${project.artifactId}-${project.version}</finalName>
</properties>
<build>
<finalName>${finalName}</finalName>
并且路过-DfinalName=helloci
执行maven时,将以下两行添加到您的.travis.yml
file:
before_install: mvn install -DskipTests=true -DfinalName=helloci
install: mvn test
您可能还想将标签名称添加到生成的文件的名称中。这可以通过以下方式实现:
before_install: mvn install -DskipTests=true -DfinalName=helloci-$TRAVIS_TAG
deploy:
file: target/helloci-$TRAVIS_TAG.jar
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)