我试图从maven迁移到gradle,在checkstyle中出现了一个奇怪的错误。
buildscript {
repositories {
mavenLocal()
jcenter()
mavenCentral()
}
dependencies {
classpath 'io.spring.gradle:dependency-management-plugin:0.5.3.RELEASE'
}
}
apply plugin: 'io.spring.dependency-management'
apply plugin: 'java'
apply plugin: 'checkstyle'
jar {
version = '0.1.0-SNAPSHOT'
}
repositories {
mavenLocal()
jcenter()
mavenCentral()
}
dependencyManagement {
imports {
mavenBom 'io.spring.platform:platform-bom:1.1.3.RELEASE'
}
}
dependencies {
checkstyle 'com.puppycrawl.tools:checkstyle:6.10.1'
compile('org.springframework.data:spring-data-commons')
testCompile('junit:junit')
testCompile('org.mockito:mockito-core')
testCompile('nl.jqno.equalsverifier:equalsverifier:1.7.5')
}
test {
maxParallelForks = 4
}
这是我得到的错误
gradle build slave-vi
:compileJava UP-TO-DATE
:processResources UP-TO-DATE
:classes UP-TO-DATE
:jar UP-TO-DATE
:assemble UP-TO-DATE
:checkstyleMain FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':checkstyleMain'.
> Unable to create a Checker: unable to read /home/xenoterracide/IdeaProjects/entity-api/config/checkstyle/checkstyle.xml - unable to parse configuration stream - Property ${checkstyle.cache.file} has not been set
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
Total time: 8.688 secs
如何让gradle使用最新版本的checkstyle?值得注意的是我的checkstyle.xml
确实适用于maven checkstyle 6.10.1和6.8
答案 0 :(得分:1)
我在配置中找到了这个
<property name="cacheFile" value="${checkstyle.cache.file}"/>
我不记得添加它,也许它是sun配置文件的一部分,恰好被maven插件填充。
答案 1 :(得分:0)
这里的问题是你使用的是checkstyle插件,但你没有为它指定任何配置。 在这里你应该添加
checkstyle {
ignoreFailures = true
configFile = file("/home/jenkins/scripts/checks.xml")
}
你应该在上面提到的位置找到你的检查样式文件(你可以改成你想要的任何东西)。
以下是带有checkstyle,PMD,findbugs,jacoco等的示例gradle文件。 http://www.scmtechblog.net/2016/01/sample-gradle-file.html
您可以将信息添加到build.gradle中以使用它。