Question

I'm following the tutorial here. The file is in the same root folder of the project. I've tried doing it when it's in the src folder and in the same package folder. None of those 3 locations worked.

The specific line of code is:

ImageIcon ii = new ImageIcon(this.getClass().getResource("bardejov.jpg"));

Any idea what I'm doing wrong?

Was it helpful?

Solution

// absolute from the classpath
MyClass.class.getResource("/myfolder/abc.txt");
// relative to the class location
MyClass.class.getResource("abc.txt");
// another relative to the class location
MyClass.class.getResource("myfolder/abc.txt");

OTHER TIPS

The getResources(...) method looks for the file relative to where the default class loader looks, and so for your code above, bardejov.jpg would need to be with the class files to be found. Myself, I usually create a subdirectory off of the class file directory, say called "images" and place my images there, and then look for them using getClass().getResource("images/bardejov.jpg")

For more on this, please check out the Class API.

If your image is in the same folder then it would work, but if your image is in root folder then use /bardejov.jpg.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top