gpt4 book ai didi

java - ClassLoader 在 Linux 上显示错误的路径

转载 作者:太空宇宙 更新时间:2023-11-04 09:26:28 25 4
gpt4 key购买 nike

我正在使用 classLoader 加载位于 /src/XMLS 下的 xml 文件:

String m_path = "XMLS/file.xml"

ClassLoader cl = getClass.getClassLoader();
file f1 = new file(cl.getResource(m_path).getFile));

在 Windows 上运行它工作正常但是在导出到 jar 并在 Linux 上运行它之后我得到 FileNotFoundException -/XMLS/file.xml。我试过这个solutions而且我认为问题不在于从 .jar 文件中读取。对于我做错了什么还有其他想法吗?

最佳答案

这不适用于 jar 文件中的资源,它不是文件系统上的文件。相反,您需要使用 getResourceAsStream(),它返回一个 InputStream 以直接使用:

InputStream in = someClass.getClassLoader().getResourceAsStream("/XMLS/file.xml");

关于java - ClassLoader 在 Linux 上显示错误的路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35846239/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com