【发布时间】:2017-03-21 16:16:11
【问题描述】:
因此,我编写了自己的后端并将其转换为工件(依赖项)。依赖项包含三个 .json 文件。它的目录树如下:
/resources/
/com/
/META-INF/
现在,当我尝试将依赖项作为库添加到另一个项目(访问方法等)时,会抛出此消息:
java.io.FileNotFoundException: C:\Users\Yasin\Desktop\LeagueLookup\data\deps\resources\masteries.json (The system can not find the path specified)
at java.io.FileInputStream.open0(Native Method)
at java.io.FileInputStream.open(FileInputStream.java:195)
at java.io.FileInputStream.<init>(FileInputStream.java:138)
这是依赖项中的代码:
public static String PROJECT_ROOT_DIR = new File(Config.class.getProtectionDomain().getCodeSource().getLocation().getPath()).getParent();
public static String RESOURCES = PROJECT_ROOT_DIR + "/resources/";
public static File MASTERIES = new File(RESOURCES + "masteries.json");
这是我 Sysout 依赖项中的 PROJECT_ROOT_DIR 路径时的结果
C:\Users\Yasin\Desktop\Riot-API\out\production
当我在后端创建一个类并在其上运行代码时一切正常,但当我尝试将该依赖项用于另一个项目时一切都搞砸了。
我也让它使用它的真实路径
看起来像这样:
C:\Users\Yasin\Desktop\LeagueLookup\data\deps\main.jar\resources\masteries.json
但这也不起作用(我在某处读到使用 InputStream,试过了,但它总是给我 null,尽管路径非常好) 我的目标: 我想让 API 使用它自己的数据,我不想从其他来源抓取数据,而是我自己的来源。
希望你能帮助我
【问题讨论】:
-
没有人能帮我解决这个问题吗?
-
有时其他人需要时间来理解您的问题;)我们的帮助不会得到报酬
-
是的,我忘了 xD 无论如何谢谢