1

我无法运行它给我的“错误无法打开文件”的类或 jar 文件。

我正在使用以下命令:

javac src/*.java

jar cfe MyJar.jar src.Main src/*.class

java -jar MyJar.jar

输出:

javac src/*.java
jar cfe MyJar.jar src.Main src/*.class
java -jar MyJar.jar
Error cannot open file
C^%    

我正在使用 linux/ubuntu 和 java:

java version "1.6.0_24"
OpenJDK Runtime Environment (IcedTea6 1.11.5) (6b24-1.11.5-0ubuntu1~12.04.1)
OpenJDK 64-Bit Server VM (build 20.0-b12, mixed mode)

MANIFEST.MF 的内容:

Manifest-Version: 1.0
Created-By: 1.6.0_24 (Sun Microsystems Inc.)
Main-Class: src.Main 
4

3 回答 3

1

该错误实际上是从我创建的 FileHandler 类中输出的。我现在觉得有点惭愧。我将研究它为什么没有打印出比捕获的异常更多的内容。感谢您抽出宝贵的时间让我注意到。

于 2013-01-29T13:09:01.053 回答
0

我很确定错误消息应该是:

Error: Unable to access jarfile MyJar.jar

在任何情况下,都会打印实际的文件名。

因此,我想它只是打印错误的 jar 文件中的代码。

一个简单的测试:

jar -jar MyJar.jar "this is so stupid"

那么输出是

Error: cannot open file this is so stupid

如果是这样,请查阅您的源代码。

于 2013-01-29T13:04:57.893 回答
0

我不相信错误实际上是在java -jar命令上。我怀疑是jar命令有问题 find src.Main。试试jar cfe MyJar.jar src/*.class吧。

于 2013-01-29T12:59:18.517 回答