特拉维斯没有编译该项目

时间:2016-12-22 14:27:34

标签: maven travis-ci

我有一个非常简单的应用程序,在.travis.yml的travis中编译应用程序,我有:

git:
  depth: 3
language: java
jdk:
  - oraclejdk8

script: mvn clean install

我在本地计算机上尝试过命令mvn clean install,并且它成功构建了应用程序,但它失败了travis并出现以下错误:

$ javac -J-Xmx32m -version
javac 1.8.0_31
3.01s$ ./mvnw install -DskipTests=true -Dmaven.javadoc.skip=true -B -V
/home/travis/build.sh: line 218: ./mvnw: Permission denied
The command "eval ./mvnw install -DskipTests=true -Dmaven.javadoc.skip=true -B -V" failed. Retrying, 2 of 3.
/home/travis/build.sh: line 218: ./mvnw: Permission denied
The command "eval ./mvnw install -DskipTests=true -Dmaven.javadoc.skip=true -B -V" failed. Retrying, 3 of 3.
/home/travis/build.sh: line 218: ./mvnw: Permission denied
The command "eval ./mvnw install -DskipTests=true -Dmaven.javadoc.skip=true -B -V" failed 3 times.
The command "./mvnw install -DskipTests=true -Dmaven.javadoc.skip=true -B -V" failed and exited with 126 during .
Your build has been stopped.

那么,出了什么问题?

我使用java spring mvc

2 个答案:

答案 0 :(得分:0)

您的travis文件错误:

env:
  - MAVEN_VERSION=3.2.5
  - MAVEN_VERSION=3.3.9
install:
  - "mvn -N io.takari:maven:wrapper -Dmaven=${MAVEN_VERSION}"
  - "./mvnw --show-version --errors --batch-mode test-compile dependency:go-offline"
script: "./mvnw --show-version --errors --batch-mode -Prun-its clean verify"

这将运行一个包含两个maven版本的矩阵。如果您只需要一个,只需将参数" $ {MAVEN_VERSION}替换为您想要使用的ony ....

此外设置缓存文件夹,如下所示:

cache:
    directories:
    - $HOME/.m2

这将缓存下载的maven版本,并将阻止每个版本的下载。

答案 1 :(得分:0)

尝试以下方法:

git:
  depth: 3
language: java
jdk:
  - oraclejdk8
before_install:
  - chmod +x mvnw