33

I can't open or run my .jar file.

I just installed java, but I tried to open the .jar with other programs first, so the double-click defaults to something else and I can't change it back.

java -jar myfile.jar`

Above command returns:

'java' is not recognized as an internal or external command, operable program or batch file.

Is there a way I can still open/run this?

e: OS is Windows 8.

Also, I downloaded the .jar file; didn't create it myself (if that's relevant) Not sure if it contains an executable (but I think it does).

nivk
  • 685
  • 1
  • 6
  • 21
  • 3
    you need to add java to the system path. Possible duplicate [here](http://stackoverflow.com/questions/2619584/how-to-set-java-home-on-windows-7) – Sionnach733 Nov 13 '13 at 23:13
  • eep, I can't follow what they're doing :/ but thanks for responding! – nivk Nov 13 '13 at 23:20
  • 3
    Just follow the steps outlined in the top answer. It also doesnt matter if you have jdk or jre, both contain a runtime environment. Either one will work – Sionnach733 Nov 13 '13 at 23:27
  • Okay, going to try this now, thanks for your help! – nivk Nov 14 '13 at 00:15
  • if the java is properly installed in your computer just type `java -jar exapmple.jar'` in command prompt. – billa-code May 19 '18 at 16:03

15 Answers15

26

you can use the command prompt:

javaw.exe -jar yourfile.jar

Hope it works for you.

Riggs
  • 391
  • 3
  • 9
7

There are two different types of Java to download: The JDK, which is used to write Java programs, and the RE (runtime environment), which is used to actually run Java programs. Are you sure that you installed the RE instead of the SDK?

Kevin
  • 14,655
  • 24
  • 74
  • 124
  • Yeah, I'm sure I downloaded the RE one (from this site: https://java.com/en/download/index.jsp). Do I maybe need both? To be more accurate, it was this site: http://www.java.com/en/download/win8.jsp – nivk Nov 13 '13 at 23:23
  • 1
    You shouldn't need both. I know it's a pain, but it looks like Sionnach733's comment might be what you need to do. This answer: http://stackoverflow.com/a/17142065/473792 provides pictures showing the menus you'll need to use. Good luck! – Kevin Nov 13 '13 at 23:23
7

Use cmd prompt and type

java -jar exapmple.jar

To run your jar file.

for more information refer to this link it describes how to properly open the jar file. https://superuser.com/questions/745112/how-do-i-run-a-jar-file-without-installing-java

billa-code
  • 549
  • 5
  • 18
5

You may have several JDKs installed in your PC. Some older JDK installers also copy some java files such as java.exe, javaw.exe into C:\Windows\System32 folder.

I had a similar issue, and searched the internet for a solution and none of the suggestions didn’t open by double clicking the .jar file.

In my case the reason is I have multiple JDK & JRE versions installed on my computer. Since I am a software developer working with several different versions for different clients I need to use multiple JDKs in my PC (Windows 10 Pro). So I do not want to change the system variables (i.e. JAVA_HOME, JRE_HOME or PATH), instead I use command prompt to run java in user process whenever I wanted to use a different version.

When installing JDK it registers the .jar file association with latest version we installed in the PC. If you right click on the .jar icon and select properties, it will show that file opens with “Java(TM) Platform SE Binary”. If we look at the registry key: HKEY_CLASSES_ROOT\jarfile\shell\open\command, it will point to latest JDK version.

It is not a good idea (sometimes annoying) to change the registry key every time I want to run an app build from a different version.

So in my situation it is impossible to just double click the .jar file to execute it. But instead I found a work around solution myself.

Scenario:

Multiple JDKs (1.7, 1.8, 9.0, 10.0, 11.0, and 12.0)are installed in the PC, so the latest installed was 12.0.

Problem

Want to double click an executable .jar developed using JDK 1.8 and didn’t work

This is my work around solution:

  1. Create a shortcut for the .jar file that you want to open.

  2. Right click the shortcut icon and select properties -> Shortcut tab

  3. Change the text in the target (for example "D:\Dev\JavaApp1.8.jar") To

    "C:\Program Files\Java\jdk1.8.0\bin\javaw.exe" -jar "D:\Dev\JavaApp1.8.jar"

  4. Then click ok Double click the shortcut.

It should now open the app.

Dush
  • 1,185
  • 26
  • 29
3

I was having this same issue for both Windows 8 and Windows Server 2012 configurations. I had installed the latest version of JDK Java 7 and had set my **JAVA_HOME**system env variable to the jre folder: *C:\Program Files (x86)\Java\jre7* I also added the bin folder to my **Path** system env variable: *%JAVA_HOME%\bin*

But I was still having problems with double clicking the executable jar files. I found another system env variable OPENDS_JAVA_ARGS that can be used to set the optional properties for javaw.exe. So I added this variable and set it to: -jar

Now I am able to run the executable jar files when double clicking them.

billa-code
  • 549
  • 5
  • 18
2

In cmd you can use the following:

c:\your directory\your folder\build>java -jar yourFile.jar 

However, you need to create you .jar file on your project if you use Netbeans. How just go to Run ->Clean and Build Project(your project name)

Also make sure you project properties Build->Packing has a yourFile.jar and check Build JAR after Compiling check Copy Depentent Libraries

Warning: Make sure your Environmental variables for Java are properly set.

Old way to compile and run a Java File from the command prompt (cmd)

Compiling: c:\>javac Myclass.java
Running: c:\>java com.myPackage.Myclass

I hope this info help.

1

An easy way to execute .jar files is to create a batch file.

Let's say you placed your jar file on your Desktop;

@echo OFF
java -jar C:\Users\YourName\Desktop\myjar.jar

Copy this code to a .txt file, modify "YourName" and save as "myjar.bat". Then whenever you double click, the jar file will be executed. Hope this helps.

Berk Soysal
  • 2,356
  • 1
  • 18
  • 17
1

Go to your java directory, Copy this path C:\Program Files\Java\jdk1.8.0_40\bin

Right click on my computer , click properties, then go to "Advanced system settings" click , Environment variables. go to "System variables" table, find an entry named "path". Double click it and go to the end, put a semicolon and paste your path, apply and ok. It should run now.

1

first of all, we have to make sure that you have downloaded and installed the JDK. In order to download it click on the following link

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

(Do not forget to check "Accept License Agreement", before you choose the version you want to download)

For Windows OS 32-Bit (x86) choose "jdk-8u77-windows-i586.exe"

For Windows OS 64-Bit (x64) choose "jdk-8u77-windows-x64.exe"

Install the file that is going to be downloaded. During the installation, pay attention, because you have to keep the installation path.

When you have done so, the last thing to do, is to define two "Environment Variables".

The first "Environmental Variable" name should be:

JAVA_HOME and its value should be the installation path

(for example: C:\Program Files\Java\jdk1.8.0_77)

The second "Environmental Variable" name should be:

JRE_HOME and its value should be the installation path

(for example C:\Program Files\Java\jre8)

As soon as you have defined the Environment Variables, you can go to command prompt (cdm) and run from every path your preferred "java.exe" commands. Your command line can now recognize your "java.exe" commands.

:)

P.S.: In order to define "Environment Variable", make a right click on "This PC" and select "properties" from the menu. Then the "System" window will appear and you have to click on "Advanced system settings". As a consequence "System properties" window shows. Select the "Advanced" tab and click on "Environment Variables" button. You can now define the aforementioned variables and you're done

Origamer7
  • 315
  • 3
  • 17
1

You must create a manifest file and specify your class that has the main method. you can build your jar file with manifest file as a parameter.

jar cfm MyJar.jar Manifest.txt MyPackage/*.class

Manifest-Version: 1.0

Archiver-Version: Plexus Archiver

Created-By: Apache Maven

Built-By: Cakes

Build-Jdk: 1.6.0_04

Main-Class: com.foo.App
Haroldo Gondim
  • 7,725
  • 9
  • 43
  • 62
metin
  • 101
  • 6
0

Short trick: after I only REMOVED SPACES from names of the folders, where the .jar file was, double-clicked worked and the file executed.

0

In Netbeans please delete current you create the jar file and on the project explore of Netbeans please clean and build 2 or 3 times and right the project folder in project explore and build the jar file.

0

I had this problem a while back and the solution was really easy.

Just uninstall the current version of Java, download an older one, then uninstall the older and install the latest again.

For example: Java 8 Update 73 current install Java 7 Update 95.

How it works: Java's registry keys were messed up, and when you install the older version they get fixed.

estani
  • 24,254
  • 2
  • 93
  • 76
Teodor
  • 1
0

If the intention of the question is to view the contents of the JAR file, then the following java command would help.. (provided, JDK location is added to the environment variables.)

Windows Command prompt> jar tvf yourJarFile.jar

  • Example:

    jar tvf log4j-extras-1.2.17.jar

Reference: http://docs.oracle.com/javase/tutorial/deployment/jar/view.html

Community
  • 1
  • 1
Santosh Kumar Arjunan
  • 3,600
  • 3
  • 23
  • 24
-2

I downloaded the latest JDK 7u10. Once you do that, try running your jar, It should execute.

Engineer2021
  • 3,288
  • 6
  • 29
  • 51
Arjun
  • 15
  • 4