File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Beginning Java and the fly likes jar file Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » Beginning Java
Bookmark "jar file" Watch "jar file" New topic

jar file

Mary Murphy

Joined: Feb 02, 2012
Posts: 3

i've created a jar file, it runs from the command line but when i double click on it , it won't run.
what can i do? how do i find out whats wrong?

Ralph Cook
Ranch Hand

Joined: May 29, 2005
Posts: 479
Assuming you are on Windows, the type of file is determined by its extension (.jar in this case), and you can designate a program to 'open' (execute, in this case) a file with that extension when you double-click it. On Windows Explorer (not Internet Explorer), under "Tools / Folder Options / File Types" is a (long) list of file types and buttons and so forth to change and set their associated programs. For .jar files, mine is set to the "Java(TM) Platform SE binary". I expect you should set it to your "java.exe", but it was done so long ago on my machine I don't remember. And it might be done by some sort of installation of the JRE, I don't remember that either.

Tina Smith
Ranch Hand

Joined: Jul 21, 2011
Posts: 208

You need to make your jar executable by adding a manifest file that specifies your main class.

And yes, make sure that java.exe is the process that gets called.
I recently updated one of the apps on my computer that put itself as the default executor of jar files. Imagine my surprise when I double-clicked on a jar and a seemingly un-related app popped up.

You should be able to see the error by opening a command prompt and typing "<yourprogram>.jar" (note, no java command).

Everything is theoretically impossible, until it is done. ~Robert A. Heinlein
Mary Murphy

Joined: Feb 02, 2012
Posts: 3
thank you !

however i have only just realised the reason it wasn't working was because i only had system.out statements in it, by putting a JOptionpane i was able to see that double clicking works.

i feel fairly silly as i wasted loads of time trying to work out what was wrong!
Campbell Ritchie

Joined: Oct 13, 2005
Posts: 46368
Welcome to the Ranch

You didn’t waste lots of time. You learnt an important lesson about opening .jars by different techniques and about Consoles. That will enable you to avoid null pointer exceptions next time you use a Console object.
I agree. Here's the link:
subject: jar file
jQuery in Action, 3rd edition