On Aug 29, 3:32 pm, Arne Vajh?j <a...@vajhoej.dk> wrote:
No - resources are like classes and are fine to load from inside
the jar.
With one caveat though: you can only read resources from inside
the jar - you can not modify them from your app.
That's what I thought...and that is what's causing my problem.
I have various resources in a JAR that I cannot seem to find or load
correctly.
Here is the error I receive...
[java] Exception in thread "main"
java.lang.ExceptionInInitializerError
[java] at
myproject.gui.components.view.menu.MainMenu.getNewMenuItem(Unknown
Source)
...
Here is my Ant script for the JAR.
<jar destfile="${dist}/${build.name}.jar">
<!-- Generate the MANIFEST.MF file. -->
<manifest>
<attribute name="Built-By" value="${user.name}" />
<attribute name="Release-Version" value="${version}" />
<attribute name="Main-Class" value="myproject.Main" />
<attribute name="SplashScreen-Image" value="TitleScreen.png" />
<attribute name="Class-Path" value="${resources} ${classpath}" />
</manifest>
<zipfileset dir="${build.dir}" />
<zipfileset dir="${resources}" prefix="resources" />
<fileset file="${resources}/icons/misc_icons/TitleScreen.png" />
</jar>
I can't seem to find the resources inside my JAR. Any suggestions/
tips?
Look at the structure of the jar (jar tvf command can be used).
getClass().getClassLoader().getResource("resources/icons/misc_icons/TitleScreen.png")
should read it (or .getResourceAsStream if you prefer that).