Gandalf StormCrow Gandalf StormCrow -4 years ago 96
Java Question

Resource from src/main/resources not found after building with maven

Hello I'm using a configuration file from src/main/resources in my java application. I'm reading it in my Class like this :

new BufferedReader(new FileReader(new File("src/main/resources/config.txt")));

So now I'm building this with maven using
mvn assembly:assembly
. Here is the bit for that in my pom.xml :


So when I run my app I get this error :

src\main\resources\config.txt (The system cannot find the path specified)

But when I right click on my assembled jar I can see it inside, anyone knows what I'm doing wrong?

Answer Source

Resources from src/main/resources will be put onto the root of the classpath, so you'll need to get the resource as:

new BufferedReader(new InputStreamReader(getClass().getResourceAsStream("/config.txt")));

You can verify by looking at the JAR/WAR file produced by maven as you'll find config.txt in the root of your archive.

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download