如何打开/运行.jar文件(双击不起作用)?

问题描述 投票:20回答:14

我无法打开或运行我的.jar文件。

我刚刚安装了java,但是我试图先用其他程序打开.jar,所以双击默认为其他东西,我无法改回来。

java -jar myfile.jar`

以上命令返回:

'java'不被识别为内部或外部命令,可操作程序或批处理文件。

有没有办法可以打开/运行它?

e:操作系统是Windows 8。

另外,我下载了.jar文件;我自己没有创建它(如果那是相关的)不确定它是否包含可执行文件(但我认为它确实如此)。

java windows windows-8 jar
14个回答
18
投票

您可以使用命令提示符:

javaw.exe -jar yourfile.jar

希望对你有效。


1
投票

执行.jar文件的简单方法是创建批处理文件。

假设您将jar文件放在桌面上;

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

将此代码复制到.txt文件,修改“YourName”并另存为“myjar.bat”。然后,只要双击,就会执行jar文件。希望这可以帮助。


1
投票

您的PC中可能安装了多个JDK。一些较旧的JDK安装程序还将一些java文件(如java.exejavaw.exe)复制到C:\Windows\System32文件夹中。

我有一个类似的问题,并在互联网上搜索解决方案,没有任何建议没有通过双击.jar文件打开。

在我的情况下,原因是我的计算机上安装了多个JDK和JRE版本。由于我是一名软件开发人员,为不同的客户端使用多个不同的版本,我需要在我的PC(Windows 10 Pro)中使用多个JDK。所以我不想更改系统变量(即JAVA_HOMEJRE_HOMEPATH),而是每当我想使用不同的版本时,我都会使用命令提示符在用户进程中运行java。

安装JDK时,它会将.jar文件关联注册到我们在PC中安装的最新版本。如果右键单击.jar图标并选择属性,它将显示该文件打开“Java(TM)Platform SE Binary”。如果我们查看注册表项:HKEY_CLASSES_ROOT\jarfile\shell\open\command,它将指向最新的JDK版本。

每次我想从不同版本运行应用程序构建时,更改注册表项不是一个好主意(有时很烦人)。

所以在我的情况下,双击.jar文件来执行它是不可能的。但相反,我自己找到了解决方案。

场景:

PC中安装了多个JDK(1.7,1.8,9.0,10.0,11.0和12.0),因此最新安装的是12.0。

问题

想要双击使用JDK 1.8开发的可执行文件.jar并且无法正常工作

这是我的解决方案:

  1. 为要打开的.jar文件创建快捷方式。
  2. 右键单击快捷方式图标,然后选择属性 - >快捷方式选项卡
  3. 更改目标中的文本(例如"D:\Dev\JavaApp1.8.jar")To “C:\Program Files\Java\jdk1.8.0\bin\javaw.exe-jarD:\Dev\JavaApp1.8.jar
  4. 然后单击“确定”。双击快捷方式。

它现在应该打开应用程序。


0
投票

简单的诀窍:在我仅从.jar文件所在的文件夹名称中删除SPACES后,双击工作并执行文件。


0
投票

我有一段时间没有这个问题,解决方案非常简单。

只需卸载当前版本的Java,下载旧版本,然后卸载旧版本并再次安装最新版本。

例如:Java 8 Update 73当前安装Java 7 Update 95。

它是如何工作的:Java的注册表键搞砸了,当你安装旧版本时,它们会得到修复。


0
投票

如果问题的目的是查看JAR文件的内容,那么以下java命令将有所帮助..(提供,JDK位置被添加到环境变量中。)

Windows命令提示符> Jar Twife

  • 例如: jar tvf log4j-extras-1.2.17.jar

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


-2
投票

我下载了最新的JDK 7u10。一旦你这样做,尝试运行你的jar,它应该执行。


7
投票

要下载两种不同类型的Java:用于编写Java程序的JDK和用于实际运行Java程序的RE(运行时环境)。您确定安装了RE而不是SDK吗?


5
投票

使用cmd提示符并键入

java -jar exapmple.jar

运行jar文件。

有关更多信息,请参阅此链接,它介绍了如何正确打开jar文件。 https://superuser.com/questions/745112/how-do-i-run-a-jar-file-without-installing-java


2
投票

在cmd中,您可以使用以下内容:

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

但是,如果使用Netbeans,则需要在项目中创建.jar文件。如何去运行 - >清理和构建项目(您的项目名称)

还要确保项目属性Build-> Packing有一个yourFile.jar并在编译后检查Build JAR检查复制依赖库

警告:确保正确设置了Java环境变量。

从命令提示符(cmd)编译和运行Java文件的旧方法

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

我希望这些信息有所帮助。


2
投票

对于Windows 8和Windows Server 2012配置,我遇到了同样的问题。我安装了最新版本的JDK Java 7并将我的**JAVA_HOME**system env变量设置为jre文件夹:*C:\Program Files (x86)\Java\jre7* 我还将bin文件夹添加到我的**Path**系统env变量:*%JAVA_HOME%\bin *

但是我仍然遇到双击可执行jar文件的问题。我找到了另一个系统env变量OPENDS_JAVA_ARGS,可用于设置javaw.exe的可选属性。所以我添加了这个变量并将其设置为:-jar

现在,我可以在双击时运行可执行jar文件。


1
投票

在Netbeans中,请删除当前您创建的jar文件,并在Netbeans的项目浏览中,请清理并构建2到3次,并在项目探索中生成项目文件夹并构建jar文件。


1
投票

转到您的java目录,复制此路径C:\ Program Files \ Java \ jdk1.8.0_40 \ bin

右键单击我的计算机,单击属性,然后转到“高级系统设置”单击,环境变量。转到“系统变量”表,找到名为“path”的条目。双击它并转到最后,添加分号并粘贴您的路径,应用并确定。它现在应该运行。


1
投票

首先,我们必须确保您已经下载并安装了JDK。要下载它,请单击以下链接

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

(在选择要下载的版本之前,请不要忘记检查“接受许可协议”)

对于Windows OS 32位(x86),请选择“jdk-8u77-windows-i586.exe”

对于Windows OS 64位(x64),请选择“jdk-8u77-windows-x64.exe”

安装要下载的文件。在安装过程中,请注意,因为您必须保留安装路径。

当你这样做时,最后要做的是定义两个“环境变量”。

第一个“环境变量”名称应为:

JAVA_HOME及其值应该是安装路径

(例如:C:\Program Files\Java\jdk1.8.0_77

第二个“环境变量”名称应为:

JRE_HOME及其值应该是安装路径

(例如C:\Program Files\Java\jre8

一旦定义了环境变量,就可以转到命令提示符(cdm)并从每个路径运行首选的“java.exe”命令。您的命令行现在可以识别您的“java.exe”命令。

:)

P.S。:为了定义“环境变量”,右键单击“此PC”并从菜单中选择“属性”。然后会出现“系统”窗口,您必须单击“高级系统设置”。因此,“系统属性”窗口显示。选择“高级”选项卡,然后单击“环境变量”按钮。您现在可以定义上述变量,然后就完成了


1
投票

您必须创建一个manifest文件并指定具有main方法的类。您可以使用jar文件作为参数构建manifest文件。

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
© www.soinside.com 2019 - 2024. All rights reserved.