在以下程序中,如果执行此操作(例如,通过命令行),args JVM是否独立保证不为null?
public class test {
public static void main(String[] args) {
}
}
Run Code Online (Sandbox Code Playgroud) 我目前正在使用JavaCC(使用此处的JavaCC gradle插件)来生成我的一些源代码.项目的其余部分确实依赖于该代码.如果我将项目导入IDEA或清理项目,那么我将收到错误,因为找不到类.但是,构建项目确实有效.
是否可以修改gradle文件,以便IntelliJ(也可能是其他编辑者)知道在分析代码之前生成这些源?
生成的代码保存在src/gen/java /中,生成的代码的位置通过以下方式得知:
sourceSets {
gen {
java {
srcDir 'src/gen/java'
}
}
}
Run Code Online (Sandbox Code Playgroud)
由于IntelliJ正在构建项目,我认为最简单的方法是:
compileJava.dependsOn <generateSourcesTask>
Run Code Online (Sandbox Code Playgroud)
但是将它添加到gradle文件没有效果(可能是因为JavaCC插件已经这样做了).