943,724 Members | Top Members by Rank

Ad:
  • Java Discussion Thread
  • Unsolved
  • Views: 4912
  • Java RSS
May 2nd, 2009
0

Adding resources to .jar

Expand Post »
Hello!

I'm searching and searching and can't find a solution...

In my project I've got a folder 'Images' where from my application loads icons etc. Running project from IDE (NetBeans) it's of course working fine, but I want to create stand-alone application, so I create .jar file.

And here's a problem - how to add that folder 'Images' to my .jar file, so application could load icons from it?

I tried to simply put that folder into .jar file, but it doesn't seem to be that easy...


Zibo
Similar Threads
Reputation Points: 12
Solved Threads: 3
Light Poster
Zibo is offline Offline
41 posts
since May 2009
May 2nd, 2009
1

Re: Adding resources to .jar

This should help. It was the first search result in Google.
Last edited by stephen84s; May 2nd, 2009 at 10:14 am.
Featured Poster
Reputation Points: 653
Solved Threads: 151
Nearly a Posting Virtuoso
stephen84s is offline Offline
1,316 posts
since Jul 2007
May 2nd, 2009
0

Re: Adding resources to .jar

Certainly, it helps alot. Thank You.

BTW: Funny site. (so offensive! )
Reputation Points: 12
Solved Threads: 3
Light Poster
Zibo is offline Offline
41 posts
since May 2009
May 2nd, 2009
0

Re: Adding resources to .jar

Ok, it didn't solve my problem as I thought. I do know now how to create, update etc. jar files, but still my application doesn't loads icons from inside of .jar file.

I've got in code such instructions as:

Java Syntax (Toggle Plain Text)
  1. new JLabel( new ImageIcon("Images\\icon.png") );

When I create .jar file the inside looks like:

Java Syntax (Toggle Plain Text)
  1. Images (my icons)
  2. MyPackage (with files .class)
  3. META-INZ (manifest)

And icons are loaded ONLY if Images folder is in same place where .jar file. I mean:

Java Syntax (Toggle Plain Text)
  1. MyFolder:
  2. ..
  3. Images\
  4. myApp.jar


So.. what am I doing wrong then?
Last edited by Zibo; May 2nd, 2009 at 12:46 pm.
Reputation Points: 12
Solved Threads: 3
Light Poster
Zibo is offline Offline
41 posts
since May 2009
May 2nd, 2009
0

Re: Adding resources to .jar

Moderator
Featured Poster
Reputation Points: 3239
Solved Threads: 838
Posting Genius
Ezzaral is offline Offline
6,761 posts
since May 2007
May 2nd, 2009
0

Re: Adding resources to .jar

You could also simply go to the directory where your netbeans projects are, and drop any files that your program needs in the right place. Then netbeans will automatically include them in your jar file and your program will find them correctly.
Reputation Points: 874
Solved Threads: 352
Posting Maven
BestJewSinceJC is offline Offline
2,758 posts
since Sep 2008
May 2nd, 2009
0

Re: Adding resources to .jar

So I've changed all parts in my code where I load images to:

Java Syntax (Toggle Plain Text)
  1. new ImageIcon(getClass().getResource("Images\\icon.png")
etc.

I've put folder Images to my package directory. Running project from IDE works fine. So I compiled code, .jar has been created.
Folder Images is located inside .jar . I double click the .jar -> nothing happens. When I run .jar from console I get:

NullPointerException at javax.swing.ImageIcon.(init)(ImageIcon.java) blabla

You could also simply go to the directory where your netbeans projects are, and drop any files that your program needs in the right place. Then netbeans will automatically include them in your jar file and your program will find them correctly.
When I put Image directory into my package, so NetBeans could add it to .jar, then created .jar file reads images from outside of .jar, not from inside.


Officially I'm sick of it. I spent 6h on that today and still didn't get it working. x(
Reputation Points: 12
Solved Threads: 3
Light Poster
Zibo is offline Offline
41 posts
since May 2009
May 2nd, 2009
0

Re: Adding resources to .jar

No, I'm saying you should literally go to the folders on your computer, and change the location of the folder with your images in it from there. I'd give you more specific directions, but I'm no expert with this, I just know it works because I did it less than a week ago. After you do this though, you must click run-> clean & build main project.
Last edited by BestJewSinceJC; May 2nd, 2009 at 10:59 pm.
Reputation Points: 874
Solved Threads: 352
Posting Maven
BestJewSinceJC is offline Offline
2,758 posts
since Sep 2008
May 3rd, 2009
0

Re: Adding resources to .jar

I really want to get to know how is this working, so I'll show You how I try to do this the best I can, so You could point precisely where's the mistake.

This is how my NetBeans project looks like. Previously in this directory was Images directory and running project from IDE loaded it from here.

http://img7.imageshack.us/img7/3991/12369439.jpg

Src directory (also have tried to put Images into CircleCross package)

http://img7.imageshack.us/img7/3558/53527242.jpg

Example code loading image. (without using getResource() methods):

Java Syntax (Toggle Plain Text)
  1. setIconImage( new ImageIcon("Images\\drawSmall.png").getImage() );

And the content of generated .jar :

http://img7.imageshack.us/img7/8868/41867443.jpg


None of images are loaded...
Last edited by Zibo; May 3rd, 2009 at 9:02 am.
Reputation Points: 12
Solved Threads: 3
Light Poster
Zibo is offline Offline
41 posts
since May 2009
May 3rd, 2009
0

Re: Adding resources to .jar

My project for netbeans shows the following packages under src folder:

calendar
application
database
org

Where org contains the image files that calendar uses. So I don't know what problem you are having exactly. I'm no expert. But I do know netbeans 6.5.1 made the jar file that I wanted it to make when all the packages were under src folder. I didn't write the code for the calendar, so I'm not sure how it loads the image, but it probably uses the method Ezzaral suggested, which is what you should be using also.
Last edited by BestJewSinceJC; May 3rd, 2009 at 1:34 pm.
Reputation Points: 874
Solved Threads: 352
Posting Maven
BestJewSinceJC is offline Offline
2,758 posts
since Sep 2008

This thread is more than three months old

No one has posted to this discussion for at least three months. Please let old threads die and do not reply to them unless you feel you have something new and valuable to contribute that absolutely must be added to make the discussion complete. Otherwise, please start a new thread in this forum instead.
Message:
Previous Thread in Java Forum Timeline: How to put random numbers into an array?
Next Thread in Java Forum Timeline: Creating an Option Screen for a Game





About Us | Contact Us | Advertise | Acceptable Use Policy
Forum Index | Build Custom RSS Feed


Follow us on Twitter


© 2011 DaniWeb® LLC