Gradle构建文件(* .gradle)是Groovy的,因此,我想对构建文件执行代码样式检查,就像项目中的任何其他代码一样。所以我认为CodeNarc可以解决这个问题。
使CodeNarc自身挂接到Gradle的最低要求如下:
apply plugin: 'groovy'
apply plugin: 'codenarc'
dependencies {
codenarc 'org.codenarc:CodeNarc:1.1'
}
tasks.withType(CodeNarc) {
// contents of the config file are not interesting enough to list
configFile = rootProject.file('config/codenarc/codenarc.groovy')
}
当我运行它时,它什么都不做,因为我们没有任何常规的主文件或测试文件。很好,我们决不打算在项目本身中使用Groovy。
但是我想知道的是,我们如何将其指向Gradle构建文件本身?
答案 0 :(得分:1)
您可能已经看到,这里有一些2014年的建议https://discuss.gradle.org/t/codenarc-gradle-files-themselves/4108
到目前为止,我能做的最好的事情就是为Linux编写一个shell脚本,像这样
#! /usr/bin/env sh
set -e -x
export GROOVY=/path/to/groovy-all-2.3.3.jar
export CODENARC=/path/to/CodeNarc-0.21.jar
export LOG4J=/path/to/log4j-1.2.17.jar
export CONFIG=/path/to/ruleseDir
java -cp "$LOG4J:$GROOVY:$CONFIG:$CODENARC" \
org.codenarc.CodeNarc -includes=**/*.gradle -basedir=. -rul
此后事情可能已经改变。