【发布时间】:2016-08-31 07:31:02
【问题描述】:
为了使开始新项目更容易,我已经将我经常使用的几个类“分解”到 eclipse 中的一个单独项目中。我称这个项目为一体机。它拥有我经常重用的各种抽象类和 OpenGL 相关方法。
(All-In-One 包含在构建路径中)
我遇到的问题是另一个项目,我将其称为测试项目。我在测试项目中创建了一个 SimpleShader 类的实例(引用 All-In-One ),但在运行时,它搜索 default.vert 并没有找到它(java.io.FileNotFoundException)
我猜这与不知道 shdr 文件夹及其内容的父项目有关;或者看到该类是在测试项目中“创建”的,它不会在 All-In-One 的 src 文件夹中查找。我已经尝试将一个文件夹链接到测试项目中的 shdr 文件夹,但没有任何改变。
All-In-One Project
src/
SimpleShader.java
shdr/
default.vert
.... other files
Test Project
src/
Here would be the main file that creates an instance of
SimpleShader, which then looks for default.vert (but can't find it)
我用这个加载文件
String filename = "shdr/default.vert"; // It's actualy passed via a parameter, but this works.
FileInputStream in = new FileInputStream(filename); // Boom java.io.FileNotFoundException:
在为所有主要事物创建单独的项目之前,这工作得很好。我希望这只是一些我不知道或不理解的简单事情。
提前致谢。
【问题讨论】:
-
你的构建路径是什么样的?为什么不将一体机用作具有适当版本控制的 jar 库?
标签: java eclipse filesystems project-management fileinputstream