2014-04-14 137 views
-1

我在我的筆記本電腦中創建了一個jar文件,它在我的電腦上運行正常,沒有麻煩,但是當我在朋友的筆記本電腦中使用它時,它顯示和異常,不運行。但我的筆記本電腦仍然很好。什麼原因?Jar文件在我的電腦上運行,但沒有在另一臺電腦上運行

jar名稱= BlueServer.jar 它只有一個類。
classname = Server.java 使用一個外部庫名稱= Bluecove.jar它用於從java訪問藍牙。使用 井= Eclipse的 使用的Eclipse創建罐子,已經檢查選項「Pacakage所需的庫到生成的JAR」

此錯誤來當我嘗試運行在另一臺計算機相同的罐子....

Java的罐子BlueServer.jar 異常線程 「main」 java.lang.UnsupportedClassVersionError錯誤:服務器:不支持MAJOR.MINOR版本51.0

at java.lang.ClassLoader.defineClass1(Native Method) 
    at java.lang.ClassLoader.defineClass(ClassLoader.java:620) 
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124) 
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:260) 
    at java.net.URLClassLoader.access$000(URLClassLoader.java:56) 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:195) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:188) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:251) 
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319) 
    at java.lang.Class.forName0(Native Method) 
    at java.lang.Class.forName(Class.java:247) 
    at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:56) 
+0

然後我必須檢查我的jar的每個用戶有更高的jdk或更低。是否有任何通用的方法,以便我不打擾該jar的用戶的jdk的版本 –

+0

@ShekharKumar不是一般的,但通常如果你將編譯器設置爲java 5(aka 1.5),你不應該再有這個問題了如今。 – SebastianH

+0

非常非常感謝 –

回答

0

java.lang.UnsupportedClassVersionError是由於JDK在編譯期間JDK較高而運行時JDK較低而發生的。確保安裝在筆記本電腦上的jdk版本與朋友的版本相同或更高。

+0

然後我怎麼知道每個客戶端都有更高的jdk或更低.. –

+0

是否有任何通用的方法,以便我不打擾關於該jar用戶的jdk版本 –

相關問題