我创建了一个具有以下结构的测试项目:
baseTest
|- src/main/java
| |- com.base
| | |- MainDependency.java
| |- module-info.java
|- src/test/java
|- test.com.base
|- SomeTest.java
module-info.java
只是一个空的模块声明:
module com.baseTest {
}
同样适用于MainDependency.java
:
package com.base;
public class MainDependency {
}
SomeTest
是一个依赖于来自main
和来自 JDK 的代码的类:
import java.util.logging.Logger;
import com.base.MainDependency;
public class SomeTest {
String s;
MainDependency md;
Logger j;
}
.classpath
是_
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src/main/java"/>
<classpathentry kind="src" path="src/test/java"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER">
<attributes>
<attribute name="module" value="true"/>
<attribute name="add-exports" value="java.logging/java.util.logging=ALL-UNNAMED"/>
</attributes>
</classpathentry>
<classpathentry kind="output" path="bin"/>
</classpath>
使用上面的配置,我得到一个The import java.util.logging cannot be resolved
错误。删除<classpathentry kind="src" path="src/main/java"/>
会消除错误(可能是因为该项目不再被视为模块化)。
我在 Eclipse 中发现了错误526831 ,但从那里看来它并不是真正的错误(?)。我在项目设置或配置方面做错了吗?