java在windows上运行jar文件

9ceoxa92  于 2021-07-09  发布在  Java
关注(0)|答案(22)|浏览(679)

我有一个名为helloworld.jar的jar文件。为了运行它,我在命令行窗口中执行以下命令:

java -jar helloworld.jar

这很好,但是如何用双击来执行它呢?我需要安装软件吗?

vatpfxk5

vatpfxk51#

在WindowsVista或Windows7中,手动文件关联编辑器已被删除。
最简单的方法是运行jarfix,一个很小但功能强大的免费软件工具。只要运行它,你的java应用程序就回来了。。。再次双击。

z6psavjg

z6psavjg2#

在windows xp*中,您只需要两个shell命令:

C:\>ftype myjarfile="C:\JRE1.6\bin\javaw.exe" -jar "%1" %* 
   C:\>assoc .jar=myjarfile

显然,使用正确的jre路径和您想要的任何名称来代替 myjarfile .
只需检查当前设置:

C:\>assoc .jar  
   C:\>ftype jarfile

这次使用第一个命令返回的值(如果有的话),而不是 jarfile .

  • 未使用windows 7测试
0lvr5msh

0lvr5msh3#

通过单击/双击运行jar文件的另一种方法是在文件名前加“-jar”。例如,您可以重命名该文件 MyJar.jar-jar MyJar.jar .
你一定有 .class 与关联的文件 java.exe ,当然。这可能不是在所有情况下都有效,但对我来说大多数时候都有效。

at0kjp5o

at0kjp5o4#

如果使用eclipse生成java文件,可以选择将其导出为可运行的jar文件。我用我的程序做了这个,我只要点击jar,它就会像那样运行。这将适用于两个windows以及osx。

a7qyws3x

a7qyws3x5#

除了所有其他建议之外,还有一件事你需要考虑。您的helloworld.jar是一个控制台程序吗?如果是的话,那么我不相信你能把它变成一个可双击的jar文件。控制台程序使用常规的cmd.exe shell窗口进行输入和输出。通常jar“launcher”绑定到javaw.exe,而javaw.exe不创建命令shell窗口。

vtwuwzda

vtwuwzda6#

规定:如果提示出现并立即消失,原因是程序被执行并自动关闭。尝试把扫描器放在最后终止,它会让你的提示在终止前等待输入(或者使用延迟)
在同样的情况下,从cmd运行.jar可以正常工作,但是双击什么也没做。
解决方案:打开任何文本编辑器并编写命令行:java-jarexample.jar将文件另存为.bat文件。运行这个bat文件以获得所需的输出。
向前一步,您可以使用简单的gui工具(如bat-to-exe转换器)将这个bat文件转换为exe文件。
现在,您可以在.exe文件中共享您的.jar分发版,任何人都可以使用该分发版,只要确保将所有文件放在一起即可(尤其是.jar和.bat文件cause.bat只是一个cmd提示符(感觉很合理)
我对发展和学习还比较陌生。如果犯了错误,请原谅。欢迎提出建议。

ojsjcaue

ojsjcaue7#

有一种方法不需要用户在pc上做更改。runtime.getruntime.exec()允许我们启动cmd.exe并在其中执行命令。所以,当用户单击.jar文件时,java程序可以在命令提示符下自行运行。

public static void main(String[] args) throws IOException {
    if(args.length == 0) {
        Process p = Runtime.getRuntime().exec("cmd.exe /c start java -jar " + (new File(NameOfClass.class.getProtectionDomain().getCodeSource().getLocation().getPath())).getAbsolutePath() + " cmd");
    } else {
        //code to be executed
    }
}
yb3bgrhw

yb3bgrhw8#

创建 .bat 文件:

start javaw -jar %*

然后选择应用程序默认打开 .jar 用这个 .bat 文件。
它会关闭的 cmd 你什么时候开始工作 .jar 文件。

b1zrtrql

b1zrtrql9#

cmd(命令提示符)上的第一个设置路径:

set path="C:\Program Files\Java\jre6\bin"

然后键入

java -jar yourProgramname.jar
c3frrgcw

c3frrgcw10#

我在windows10中也遇到了同样的问题。我用righ修复了它单击“helloworld.jar”并转到属性,单击“打开方式:”下的更改按钮,然后选择“在这台电脑上寻找另一个应用程序”。在“打开方式…”对话框中,转到您电脑上的java文件夹位置,打开相应的jdk文件夹,然后打开bin文件夹并从中选择“javaw.exe”。下一次你的“helloworld.jar”将以正常方式打开。
常见的java位置示例:“c:\program files(x86)\java\jdk1.8.0\U 111\bin”。

hi3rlvi2

hi3rlvi211#

如果需要分发.jar文件并使其在其他人的windows计算机上运行,可以在命令提示符中创建一个简单的.bat文件,如下所示:

java -jar MyJavaTool.jar

并将.bat文件放在与.jar文件相同的目录中。

dw1jzc5e

dw1jzc5e12#

如果您需要通过双击jar文件来运行它,那么必须将其创建为“可运行jar”。您只需使用ide就可以做到这一点。
如果您使用的是eclipse,请执行以下步骤:

To create a new runnable JAR file in the workbench:

1.From the menu bar's File menu, select Export.
2.Expand the Java node and select Runnable JAR file. Click Next.
3.In the  Opens the Runnable JAR export wizard Runnable JAR File Specification page, select a 'Java Application' launch configuration to use to create a runnable JAR.
4.In the Export destination field, either type or click Browse to select a location for the JAR file.
5.Select an appropriate library handling strategy.
Optionally, you can also create an ANT script to quickly regenerate a previously created runnable JAR file.

更多信息可以在eclipse帮助页上找到:link

ix0qys7i

ix0qys7i13#

你需要检查一些东西;如果这是您自己的jar文件,请确保您在清单中定义了一个主类。因为我们知道您可以从命令行运行它,所以要做的另一件事是创建一个windows快捷方式,并修改属性(您必须四处查看,我没有windows机器可以查看),以便它在open时执行的命令就是您提到的java-jar命令。
另一件事:如果某件事没有被混淆,它无论如何都应该起作用;检查并确保java与.jar扩展相关联。

mwg9r5ms

mwg9r5ms14#

这样做的一个有趣的副作用是在命令提示符下启动可运行的jar文件时出现问题。
如果尝试(在命令提示符下):

jarfile.jar parameter

没有乐趣,因为这将被转换为以下内容(这不起作用):

javaw.exe -jar jarfile.jar parameter

但是,以下命令不起作用:

java.exe -jar jarfile.jar parameter

如果如上所述将文件管理器中的关联更改为:

"C:\Program Files\Java\j2re1.4.2_04\bin\java.exe" -jar "%1" %*

然后您可以键入:

jarfile.jar parameter

在命令提示符下,它现在可以工作了!
edit:(但是当运行基于表单(非控制台)的java应用程序时,会出现一个黑色的控制台窗口,因此这不是一个理想的解决方案)
如果在windows中双击这些jar文件来运行它们,则不会传递任何参数,因此java代码需要处理堆栈溢出异常,并在末尾包含一个“press a key”函数,否则窗口将消失。
为了在windows中传递参数,您必须创建jar文件的快捷方式,其中包括目标行中的参数(右键单击快捷方式并选择properties),您不能以这种方式将参数添加到jar文件图标本身。
这里没有一个单一的、一致的解决方案,但是任何其他控制台应用程序都会遇到同样的问题。
有一个名为“bat to exe”的windows免费软件应用程序,您可以使用它从一个.bat文件中创建一个包含适当命令行的exe文件。您还可以将jar文件嵌入到这个应用程序的exe中,并使其在运行完成后进行清理,因此这可能是一个更优雅的解决方案。

n3ipq98p

n3ipq98p15#

在windows上运行.jar文件有很多方法。其中之一是使用命令提示符。
步骤:
打开命令提示符(以管理员身份运行)
现在为根目录编写“cd\”命令
键入“javajarfilename.jar”注意:您还可以使用任何第三方应用程序,如winrar、jarfix等。

相关问题