Gradle:如何通过运行Gradle 4.1任务

时间:2017-09-13 11:17:35

标签: eclipse gradle compiler-errors javac ecj

我有一个项目可以通过 eclipse(ECJ)很好地构建但是 Oracle javac 无法构建它(某些原因如链接:{{3} })。 我想从Graclipse转移到Gradle构建,以便Jenkins可以运行Gradle脚本。但Gradle总是使用javac进行编译。我使用插件'eclipse,eclipse-wtp'或库,jdt的依赖关系配置gradle使用ECJ,但它仍然不使用ECJ编译:

compileJava{   
    options.forkOptions.with {
    executable = 'java'
    jvmArgs = ['-classpath','_mylibary_jdt_jar']
    }
}

问题:我不知道方式(没有文件,某些方式但是过时使用旧gradle或不正确)gradle 4.1运行任务与Eclipse编译器(ECJ)来编译我期望的类。

  

注意:我在javac:the different of ecj and javac构建时出现此错误。我希望通过与ECJ的任务进行良好运行。

1 个答案:

答案 0 :(得分:0)

将此添加到gradle构建脚本中对我有用:

configurations {
    ecj
}
dependencies {
    ecj 'org.eclipse.jdt.core.compiler:ecj:4.6.1'
}

compileJava {
    options.fork = true
    options.forkOptions.with {
    executable = 'java'
    jvmArgs = ['-classpath', project.configurations.ecj.asPath, 'org.eclipse.jdt.internal.compiler.batch.Main', '-nowarn']
    }
}