【发布时间】:2014-04-01 08:15:05
【问题描述】:
我从一个简单的代码(在 Eclipse 中)生成了 test.jar 文件:
package testJawka;
public class VarArgsDemo {
public static void main(String[] args) {
if (args.equals("1")){
System.out.println("test 1");
} else if (args.equals("2")){
System.out.println("test 2");
}
}
}
在命令行(win7)中的结果是这样的:
C:\DATA>java -jar test.jar -D 1
Exception in thread "main" java.lang.UnsupportedClassVersionError: testJawka/VarArgsDemo : Unsupported major.minor version 51.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(Unknown Source)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$000(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
Could not find the main class: testJawka.VarArgsDemo. Program will exit.
一般来说,我想检查它是如何工作的,我的意思是 jar 文件具有一些属性。可能是jar文件有问题。有谁能帮帮我吗?
【问题讨论】:
-
if (args.equals("1"))args 是String[],"1"是String。您的意思是检查第一个参数吗? -
请参阅stackoverflow.com/questions/10382929/… 回答您的问题
-
这对我来说是新的,在这个例子中我想运行带有属性的程序,所以如果我设置 '1' 应该显示“test 1”,如果设置 '2' 那么“test 2”?跨度>
标签: java eclipse jar attributes main