tsc*_*ann 6 java gradle build.gradle
error: cannot find symbol当compileTestJava 任务在我的 Gradle 项目中运行时,我收到很多错误。
我的代码在src/main/java,我的测试在src/test/java,测试类无法解析任何类src/main/java
例如:
C:\q\src\test\java\q\MainTest.java:14: error: cannot find symbol
Main.main(new String[0]);
^
symbol: variable Main
location: class MainTest
Run Code Online (Sandbox Code Playgroud)
但q\src\main\java\q\Main.java存在、编译并且是同一包中的公共类。
构建.gradle:
plugins {
id 'java'
}
repositories {
jcenter()
}
dependencies {
implementation 'com.google.guava:guava:29.0-jre'
testImplementation 'junit:junit:4.13'
}
Run Code Online (Sandbox Code Playgroud)
我一直在通过将以下内容添加到 build.gradle 来解决这个问题:
sourceSets {
test {
java.srcDirs = ['src/main/', 'src/test/']
}
}
Run Code Online (Sandbox Code Playgroud)
这确实有效,但会导致 IntelliJ 中出现错误。
我遇到了同样的问题,同样的修复也有效。
我还设法让它在没有修复的情况下工作。就我而言,问题是由项目的路径引起的。它嵌套:在名称中带有冒号 ( ) 的目录中。也许还可以查找任何其他不规则之处(分号、空格……)。
| 归档时间: |
|
| 查看次数: |
6562 次 |
| 最近记录: |