我正在尝试使用gradle 6.0.1构建任务构建Java 13应用程序。有一个module-info.java,它需要包括junit在内的各种软件包。
当我尝试构建时,模块反复出现错误,要求包名称:
> Task :compileJava
C:\TFS\Spring\cm-spring-boot\src\main\java\module-info.java:4: error: module not found: junit
requires junit;
C:\TFS\Spring\cm-spring-boot\src\main\java\module-info.java:5: error: module not found: org.hamcrest
requires org.hamcrest;
等
我试图在gradle.build的compileJava
部分中设置完整的module-info.java要求,但遇到相同的错误。
compileJava {
doFirst {
options.compilerArgs += ['--module-path', classpath.asPath]
classpath = files()
}
}
要解决此问题,我必须倒退至Java 1.8并通过删除gradle.build
部分并在gradle中设置compileJava
和sourceCompatibility=1.8
来更新targetCompatibility=1.8
。在关闭项目并再次导入之前,构建并设置。然后,该项目运行gradle.build,没有发现任何模块问题。