Gradle groovy脚本在资源中找不到文件
我有一个结构如下的Gradle groovy脚本在资源中找不到文件,gradle,groovy,Gradle,Groovy,我有一个结构如下的gradle应用程序 src\main\ antlr\ groovy\ jvm\ script.groovy java\ resources\ program.pas build\ classes\ main\ jvm\ script.class
gradle
应用程序
src\main\
antlr\
groovy\
jvm\
script.groovy
java\
resources\
program.pas
build\
classes\
main\
jvm\
script.class
resources\
main\
program.pas
我的剧本里有一行
CharStream input = new ANTLRFileStream("program.pas")
我使用此任务运行脚本
task runScript(dependsOn: 'classes', type: JavaExec) {
main = 'jvm.script'
classpath = sourceSets.main.runtimeClasspath
}
但当我这样做时,我会得到FileNotFound
的program.pas
异常。
当我移动到项目的根时,它能够找到它
我的建筑结构是这样的
src\main\
antlr\
groovy\
jvm\
script.groovy
java\
resources\
program.pas
build\
classes\
main\
jvm\
script.class
resources\
main\
program.pas
为什么无法在参考资料中找到它?如果已声明脚本不在包文件夹中,为什么脚本不在包文件夹中?试试
“/program.pas”
我的坏习惯。编辑邮件时,我删除了它。没有帮助。相同的消息filenotfound:\program.pas
Well。有些东西确实很奇怪。它无法在脚本中找到从java
文件夹导入的类。是的,它将首先编译groovy,当然java还没有。您可以将Java文件移到src/main/groovy中。@tim_-yates,等等。groovy插件的默认行为应该是java-first
。为什么它首先编译groovy?