Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 通过使用BAT文件执行Jar文件_Java_Jar_Batch File_Executable Jar - Fatal编程技术网

Java 通过使用BAT文件执行Jar文件

Java 通过使用BAT文件执行Jar文件,java,jar,batch-file,executable-jar,Java,Jar,Batch File,Executable Jar,我创建了一个简单的类,它只具有固有的Java依赖项(Java.io,等等)。 我已经在同一个文件夹中设置了jar文件和bat文件。蝙蝠简单地说: java -jar "MyApp.jar" pause 我已经能够在计算机上的几个不同位置运行它。但是当我把它作为zip文件发送给同事时,他无法通过双击BAT文件来运行它 命令窗口返回时出错 could not find the main class: MyApp.MyApp. Program will exit. 我浏览过这个网站,但大多数类似的

我创建了一个简单的类,它只具有固有的Java依赖项(
Java.io
,等等)。 我已经在同一个文件夹中设置了jar文件和bat文件。蝙蝠简单地说:

java -jar "MyApp.jar"
pause
我已经能够在计算机上的几个不同位置运行它。但是当我把它作为zip文件发送给同事时,他无法通过双击BAT文件来运行它

命令窗口返回时出错

could not find the main class: MyApp.MyApp. Program will exit.
我浏览过这个网站,但大多数类似的错误都涉及在同一台计算机上使用。 是的,另一台计算机安装了Java 6.29


非常感谢您的帮助。

我可以马上想到两个选项:

1) 他可能没有将它们都提取到同一个目录(或者提取后,他可能已经将JAR文件移动到了另一个位置)


2) 他的类路径不包括当前目录。您的类路径有一个“.”(表示当前目录),而他的没有。如果是这种情况,您可能可以修改您的命令以包含“-cp”开关。

两个选项,我可以立即想到:

1) 他可能没有将它们都提取到同一个目录(或者提取后,他可能已经将JAR文件移动到了另一个位置)


2) 他的类路径不包括当前目录。您的类路径有一个“.”(表示当前目录),而他的没有。如果是这种情况,您可能可以修改您的命令以包含“-cp”开关。

为了以这种方式运行jar,您需要一个META-INF文件夹,其中包含一个清单文件。清单文件需要一个主类行,该行使用main()指向您的类。您的IDE可能添加了这一点,但可能在提取内容的过程中,他也解压缩了jar文件,或者类似的“有趣”的东西


为了以这种方式运行jar,您需要一个META-INF文件夹,其中包含一个清单文件。清单文件需要一个主类行,该行使用main()指向您的类。您的IDE可能添加了这一点,但可能在提取内容的过程中,他也解压缩了jar文件,或者类似的“有趣”的东西


不支持该应用程序。你有GUI吗?如果是这样的话,提供给其他人的最“防白痴”的方式就是使用。你有GUI吗?如果是这样的话,最“防白痴”的方式就是使用。
java-jar“MyApp.jar”
Use
java-jar MyApp.jar
(无引号)。该应用程序没有GUI,它只是在控制台窗口中执行。他把它们提取到同一个目录,他的桌面上。如果有帮助的话,我使用netbeans IDE来开发它。该应用程序没有GUI,只是在控制台窗口中执行。他把它们提取到同一个目录,他的桌面上。如果有帮助的话,我使用netbeans IDE来开发它。这个问题最终成为了版本控制问题。我是用Java7编译的,他们安装了Java6。这是通过从Oracle归档文件安装Java6修复的。然后将JDK1.6设置为Java平台。此外,您可以将IDE或构建脚本配置为类文件格式的目标1.6,即使是在使用Java 7构建时也是如此。问题最终成为版本控制问题。我是用Java7编译的,他们安装了Java6。这是通过从Oracle归档文件安装Java6修复的。然后将JDK1.6设置为Java平台。此外,您可以将IDE或构建脚本配置为类文件格式的目标1.6,即使在使用Java 7构建时也是如此。