喜 我有一节课 而且我有一个文件 Document doc = db.parse(element.xml); 但是当我创建jar时它没有被加载, 所以请告诉我有没有其他方法给文件路径, 所以我可以运行我的罐子
答案 0 :(得分:1)
db.parse(Foo.class.getResource("/com/ensarm/niidle/web/social/sites/sitelist.xml").toString());
其中Foo是您在其中编写此代码的类,该代码位于同一个jar中
答案 1 :(得分:1)
调用getResourceAsStream
并从流中读取数据:
db.parse(Foo.class.getResourceAsStream("/com/ensarm/niidle/web/social/sites/sitelist.xml"));
您应该始终更喜欢使用流来读取数据,而不是期望存在特定文件。
答案 2 :(得分:1)
使用类加载器从类路径加载任何资源:
ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
InputStream input = classLoader.getResourceAsStream("/com/ensarm/niidle/web/social/sites/sitelist.xml");
db.parse(input);
答案 3 :(得分:0)
User ClassLoader.getSystemResource(“root / src / com / ensarm / niidle / web / social / sites / sitelist.xml”)。getPath();指向xml或任何资源文件..
注意:您必须将xml文件位置添加到Classpath。 (-Djava.class.path =“C:\ project \ resources”)其中xml出现在C:\ project \ resources
答案 4 :(得分:0)
ClassLoader loadClass = Thread.currentThread().getContextClassLoader() ;
InputStream in =
new InputStreamReader(loadClass.getResourceAsStream("com/ensarm/niidle/web/social/sites/sitelist.xml") );