【发布时间】:2012-04-30 12:04:44
【问题描述】:
我知道之前已经讨论过执行 .jar 文件的问题(因为我在发布之前已经阅读并搜索了几个线程),但这个问题有点有点不同。我的 .jar 在被击中时会运行,
java -jre [Jar Name].jar
但是当我点击它时它不会运行。
好的,所以我目前在 JDK 1.6.0_30 上运行。输入,
java -version
进入 cmd 提供了这么多,所有有问题的代码都是在该 JDK 下编译的。此外,在我的环境变量中,“路径”指向
C:\Program Files\Java\jdk1.6.0_30\\bin;
所以这也很好。
认为这是我的计算机识别 .jar 文件的方式有问题,我输入了,
ftype|find "jarfile"
但这似乎也很好,因为它解决了,
"C:\Program Files\Java\jre6\bin\javaw.exe" -jar "%1" %*
我相信这是它应该做的。
除非用户输入它,否则我的代码不会终止,所以我知道问题不在于我的代码正在运行,然后在完成后关闭命令行。它根本不会打开 cmd 或错误。我在这里忽略了 .jar 文件和 Java 的其他什么问题?
【问题讨论】:
-
好吧,看起来 Windows 文件关联正在使用 JRE,而命令行
java命令正在使用 JDK。这可能是问题所在? -
你在创建jar时指定了你的主类吗?见link
-
您的 Jar 清单文件中有 MainClass 值吗?当您使用 javaw.exe 从命令行运行它时会发生什么?这是有效的命令还是只是普通的 java.exe?
-
是的,指定了主类。毕竟它在命令行中运行,而不是在单击时运行。另外,真实性,你到底是什么意思?我应该让 Path 指向 jre,还是我弄错了?
-
致洛根;实际上,当我使用 javaw -jar [Jar Name].jar 运行它时,也没有任何反应。所以它看起来只是普通的 java.exe
标签: java cmd executable-jar