Eclipse 项目对多个 src 目录的依赖
Eclipse Projectdependency on multiple src directories
今天我遇到了一个特殊问题,我在调试器上已经花了一段时间。
我有两个项目 Project A 和 Project B。
项目 A 有多个 src 目录。
src
├───main
│ └───java
└───generated
└───java
两者都被 eclipse 识别为实际的 src 目录。两者都将编译为 bin,如下所示:
bin
├───main
└───generated
项目 B 对项目 A 具有项目依赖性。
现在奇怪的部分来了:当我在项目 B 中通过 Class.forName()
从 Project A/src/main/java
寻找 class 时,它会被发现。当我从 Project A/src/generated/java
寻找 class 时,我得到一个 ClassNotFound 异常。
如果您能指出一种方法告诉 eclipse 在两个 src 目录上创建依赖项,我将非常高兴。
顺便说一句,以防万一它很重要:我正在使用 java 9。
这是项目 B
的 .classpath 的摘录
<classpathentry kind="src" path="/Project A"/>
感谢您的帮助。
这看起来像是 Eclipse 的错误,Gradle 或两者兼而有之。尝试删除 运行 配置并重新启动应用程序。还要确保 gradle.build
文件与 Eclipse 项目同步。如果所有这些都没有帮助,您可以使用单个输出文件夹作为解决方法:
- 在项目 > 属性中手动:Java构建路径,在选项卡源:
- 取消选中复选框允许源文件夹的输出文件夹
- 在默认输出文件夹字段中输入
bin/main
- 或通过以下
gradle.build
片段:
apply plugin: 'eclipse'
eclipse.classpath.file.whenMerged {
entries.find { it.path == 'src/main/java' }.output = 'bin/main'
entries.find { it.path == 'src/generated/java' }.output = 'bin/main'
}
今天我遇到了一个特殊问题,我在调试器上已经花了一段时间。 我有两个项目 Project A 和 Project B。 项目 A 有多个 src 目录。
src
├───main
│ └───java
└───generated
└───java
两者都被 eclipse 识别为实际的 src 目录。两者都将编译为 bin,如下所示:
bin
├───main
└───generated
项目 B 对项目 A 具有项目依赖性。
现在奇怪的部分来了:当我在项目 B 中通过 Class.forName()
从 Project A/src/main/java
寻找 class 时,它会被发现。当我从 Project A/src/generated/java
寻找 class 时,我得到一个 ClassNotFound 异常。
如果您能指出一种方法告诉 eclipse 在两个 src 目录上创建依赖项,我将非常高兴。
顺便说一句,以防万一它很重要:我正在使用 java 9。 这是项目 B
的 .classpath 的摘录<classpathentry kind="src" path="/Project A"/>
感谢您的帮助。
这看起来像是 Eclipse 的错误,Gradle 或两者兼而有之。尝试删除 运行 配置并重新启动应用程序。还要确保 gradle.build
文件与 Eclipse 项目同步。如果所有这些都没有帮助,您可以使用单个输出文件夹作为解决方法:
- 在项目 > 属性中手动:Java构建路径,在选项卡源:
- 取消选中复选框允许源文件夹的输出文件夹
- 在默认输出文件夹字段中输入
bin/main
- 或通过以下
gradle.build
片段:
apply plugin: 'eclipse'
eclipse.classpath.file.whenMerged {
entries.find { it.path == 'src/main/java' }.output = 'bin/main'
entries.find { it.path == 'src/generated/java' }.output = 'bin/main'
}