Reputation: 7951
I have hibernate.cfg.xml and test.txt in the path which i read by java program. Now when i created the jar using maven those files were not present. So i read that i should put in the resources folder , so now my directory structure is
scr -> main-> java
->resources
Now i can see the files in the jar but they are not inside resource folder it bascically
myjar.jar -> com (source code)
-> META -INF -> hibernate.cfg.xml -> test.txt
I tried accessing using
getClass().getResourceAsStream("test.txt")
but got null..
Let me know what steps are wrong ?
Upvotes: 2
Views: 12842
Reputation: 52645
Looking at this article, Does getClass().getResourceAsStream("/test.txt")
make a difference?
Upvotes: 3
Reputation: 16226
getClass().getResourceAsStream(name)
searches for the resource in the same dir as the class for which this method is called is in.
For instance, you have class A
and resource test.txt
in the same dir the you call getClass().getResourceAsStream("test.txt")
. If it's located in some subdir, you need to express that in name
: getClass().getResourceAsStream("subdir/test.txt")
.
I haven't tested that, but looking in dirs above current should be possible with: getClass().getResourceAsStream("../test.txt")
.
Upvotes: 3