• Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Are pathname relative to actual code location (versus possibilities in classpath) ?

 
Nicolas Laurent
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I have the following file layout (your typical eclipse layout) :
project
--images
-----img.png
--bin
----pkg1
------Main.class
----pkg2
------ImageLoader.class

Now image ImageLoader loads an image using the path "images/img.png". This will run fine in eclipse, but I'd like to be able to run this code via the command line without breaking eclipse compatibility. It seems that using something like "java pkg1/Main" from the bin directory will seek "bin/images/img.png" which of course does not exist. I tried adding the project directory to the classpath, without success.

So, is my intuition right and are pathnames relative to the location where to code actually resides and not to all possible locations in the classpath ?
Also, how could I use the java command to successfully run the program without breaking eclipse compatibility ?
 
Rob Spoor
Sheriff
Pie
Posts: 20514
54
Chrome Eclipse IDE Java Windows
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Move the images folder inside your bin folder, then use Class.getResource(AsStream) or ClassLoader.getResource(AsStream). If you put the images folder inside your source folder and refresh the project it will be copied to the bin folder automatically by Eclipse. This will ensure that the images will not be thrown away when the bin folder is rebuilt.
 
Nicolas Laurent
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Ok, thanks.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic