简体   繁体   中英

Read a file within a jar from java code present in same jar

I am trying to read a xsd file kept in a jar using java code kept inside the same jar. I am using the following code.

URL tmpurl = ClassLoader.getSystemResource("com/abc/filename.xsd");

Schema s = schemaFactory.newSchema(tmpurl);
jaxbUnMarshaller.setSchema(s);

It is working fine when I run it as a separate project but when I make a jar, tmpurl is null, hence the setSchema gives a null pointer exception.

Can you please a workaround that can make it run even inside a jar file.

Hava you tried?

getClass().getClassLoader().getResource()

Also your classpath in manifest file in jar does matter.

Please, take a look at accepted answers in here:

Class.getResource and ClassLoader.getSystemResource: is there a reason to prefer one to another?

Loading files with ClassLoader

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM