我彻底检查了这个,标准答案对我不起作用。
每当我尝试从cmd提示符执行jar文件时,不会打开jar文件,而是打开Dr. Java的新窗口。
我使用DrJava的“Create custom drjava jar”来创建一个名为“TestJar.jar”的jar文件,包括:
Manifest.txt:
Main-Class:com.package.name.TestJar Class-Path:algs4.jar
TestJar.java:
public class TestJar
{
public static void main(String[] args)
{
System.out.println("Hello");
StdOut.println("hello StdOut");
}
}
我在cmd提示符下输入:
java -jar TestJar.jar
DrJava打开一个新窗口。有任何想法吗?我已尝试从cmd提示符创建jar文件,但所有以“jar”开头的命令都会出现此错误:
'jar'未被识别为内部或外部命令,可操作 程序或批处理文件。
非常感谢任何帮助......我对Java很陌生。
答案 0 :(得分:1)
您遇到的问题是jar
程序不在您的%PATH%
中。您可能会发现this answer有帮助。
答案 1 :(得分:0)
Java使用manifest确定main
函数的位置。如果解压缩jar文件,您将在META-INF文件夹中看到清单文件。 (jar文件只是一个包含不同扩展名和一些特定文件的zip文件。)
你需要在清单中输入这样的条目:
Main-Class: packagename.classname
有关设置main
的位置的详细信息,请参阅here。
要控制Java博士的清单,我认为您需要创建一个自定义清单。 This source提供了以下说明:
为了更好地控制jar的属性,你可以输入一个 通过选择“自定义清单”并按“编辑”自定义清单 清单“按钮。
答案 2 :(得分:0)
1)从Windows命令运行测试jar:
a)确保在PC上安装了Java
b)设置%JAVA_HOME%(EX:设置JAVA_HOME = c:\ Program files \ java \ jre7)
c)更新%PATH%(EX:PATH = c:\ Program 文件\ java的\ jre7 \ BIN;%PATH%)
d)使用“java -jar JARFILE MAIN-CLASS(EX:java -jar)调用程序 TestJar.jar TestJar)
2)要在Windows上运行DrJava .jar,我只需双击Windows资源管理器中的.jar文件
3)为了测试和调试你的程序,我只使用DrJava(而不是命令行)。
4)您执行 NOT 需要安装“jar.exe”来运行.jar文件。您只需要它来查看,修改或创建.jar。 jar.exe附带Java JDK。
5)我怀疑你可能 WILL 需要Java JDK来使用DrJava构建或调试任何程序。
如果您需要更多帮助,以下是从Windows运行.jar文件的一个很好的链接: