我运行在Ubuntu 10.10下面的代码,使用OpenJDK的1.6.0_18:参数在Java中的Jar忽略
package mypkg;
public class MyTest {
public static void main(final String[] args) {
System.out.println(args.length + " argument(s)");
for (final String arg : args) {
System.out.println(arg);
}
}
}
它编译成JAR后,我完全不解,为什么从执行下面的命令终端返回0 argument(s)
:
Java的罐子mytest.jar这是一个测试
这是我的the Java docs解释,他说:
的java [选项] -jar file.jar [参数...]
我几乎有我在终端输入一个错误的命令的感觉。是什么赋予了?
编辑:的MANIFEST.MF包含:
Manifest-Version 1.0
Created-By: 1.6.0_18 (Sun Microsystems Inc.)
Main-Class: mypkg.Starter
Class-Path: .
你的jar的META-INF/MANIFEST.MF包含什么? – 2010-11-12 15:01:06
我已经更新了OP。 Main-Class路径与包声明相同。 – 2010-11-12 15:05:41
哇。我觉得自己像个白痴。毕竟它是'主要类':我正在启动一个不同的类来处理这些争论,并将它们(错误地)传递给所需的类。 – 2010-11-12 15:09:02