这个问题困扰了我一段时间。我必须在我的 java 应用程序中加载几个文件,到目前为止我工作的唯一方法是这样的:
URL hsURL;
if(System.getProperty("os.name").toLowerCase().contains("windows")) {
hsURL = new URL("file:/" + System.getProperty("user.dir") + "/helpsets/helpset.hs");
}
else {
hsURL = new URL("file://" + System.getProperty("user.dir") + "/helpsets/helpset.hs");
}
但这是丑陋和可怕的。有一段时间我以为我有这个工作:
hsURL = ClassLoader.getSystemResource("helpsets/helpset.hs");
但这由于某种原因不再起作用(我一定改变了一些东西但没有注意到。它返回 null。
我应该使用 getResource() 而不是 getSystemResource()(如果是,为什么 getSystemResource() 是静态的而不是 getResource())?
我正在使用 eclipse 并且我尝试在构建路径(类路径)中包含该文件夹而不包括它,它似乎没有任何区别。