[英]Gradle build failed on Travis CI
我使用filteringCharset = 'UTF-8'
因為build.gradle
中的ProcessResources
中build.gradle
編碼問題。 這個構建在我的桌面上成功,但在Travis CI上失敗了。 我猜這是特拉維斯CI的Gradle的問題。 所以我嘗試更新版本但找不到任何信息。 這是Gradle版本的問題嗎? 如果是的話,我該怎么辦?
Travis構建錯誤:
FAILURE: Build failed with an exception.
* Where:
Build file '/home/travis/build/EntryPointKR/K-Security/build.gradle' line: 43
* What went wrong:
A problem occurred evaluating root project 'K-Security'.
> No such property: filteringCharset for class: org.gradle.language.jvm.tasks.ProcessResources_Decorated
完整的travis構建日志: https : //travis-ci.org/EntryPointKR/K-Security/builds/201771722
.travis.yml:
language: java
sudo: false
jdk:
- oraclejdk8
addons:
apt:
packages:
- oracle-java8-installer
build.gradle中的問題代碼
processResources {
filteringCharset = 'UTF-8' // Here
filter ReplaceTokens, tokens: [
"version" : project.version,
"pluginName": rootProject.name,
"mainClass" : "cloud.swiftnode.ksecurity.KSecurity",
"author" : "EntryPoint"
]
}
這很可能是由於您的gradle版本與java映像中安裝的gradle版本不匹配所致。 它是在Gradle 2.14中引入的 。 最簡單的解決方法是使用gradle包裝器在兩個環境中強制執行相同的版本。
只需添加包裝器任務:
task wrapper(type: Wrapper) {
gradleVersion = '3.3'
}
應該可以在before_install
運行gradle wrapper
,或者只是將gradle-wrapper jar與項目捆綁在一起。 Travis CI將檢測gradle包裝並使用gradlew
而不是gradle
。
如果您在本地計算機上使用Windows,請確保使用可執行標志提交gradlew
腳本 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.