我有一個code.jar在1.7版本的java中運行良好,但是當與1.6版本的linux一起使用另一臺計算機時,它給我一個錯誤,我如何在1.6版本中運行它?如何使用舊版本的Java 1.6運行.jar 1.7程序?
回答
什麼是表揚? 我可以寫javac -source 1.6 code.jar嗎? – user1475288
@ user1475288:它不是來源,它是目標。閱讀我的答案中提供的鏈接。 – kosa
但如果我的文件是「yourfile.jar」 我可以使用 javac file.jar -target 1.6? – user1475288
如果密碼不與舊的Java兼容性標誌編譯,你將不能夠在1.6運行它。
什麼是解決方案如何更改我的代碼以便能夠在較舊版本中運行 – user1475288
首先確保以code.jar結尾的源代碼可與Java 1.6編譯。然後,當你用javac編譯它時,使用-target 1.6標誌。 –
建立在Eclipse中使用Java 6中的項目,您將需要下載Java 1.6 JRE,然後有蝕點1.6 JRE,請參閱:http://www.cleartoolkit.com/dokuwiki/doku.php?id=clearwiki:20.cleardatabuilder:01.setup:01.prerequisites
現在右鍵點擊你的項目 - >屬性,單擊Java編譯器,取消選中「啓用項目特定設置」,單擊「配置工作區設置」,然後選擇1.6作爲您的編譯器合規性級別。
做「事」再次導出您的項目,新的罐子應該工作。
希望這會有所幫助。
使用cross-compilation options調用javac
時。
如果只有-target
選項按照大多數其他答覆中的建議進行指定,那麼1.7 SDK將發出關於-bootclasspath
的警告。該選項需要目標JRE版本的rt.jar
(注意而不是 JDK)。它允許編譯器檢查引用核心Java SE的代碼的類,方法和屬性實際上存在於rt.jar
中。這對確保兼容性非常重要。
我在Eclipse中發現了一個解決方案!
如果你到你的項目,並單擊鼠標右鍵訪問屬性,有一個叫做Java編譯器選項卡。如果啓用項目特定屬性並取消選中JDK合規性下的複選框,則可以將源代碼兼容性和.class文件兼容性更改爲1.6。
這應該可以解決你的問題和產生的.jar文件應在兩臺設備上工作。我通過將文件從1.8移動到1.7並在我的Raspberry Pi上進行了測試,測試結果爲OpenJDK 1.7,效果很好。我希望這有幫助。
- 1. Eclipse運行舊版本的Java程序
- 2. 不受支持major.minor版本.51和在Java 1.6上運行java 1.7代碼1.6
- 3. Java的版本顯示舊的JDK 1.6版本
- 4. 如何將.jar 1.7轉換爲.jar 1.6
- 5. 運行與較舊的java版本的swing應用程序
- 6. Eclipse運行舊版本的程序
- 7. 如何使用不同版本的java
- 8. 使用php轉換PDF版本1.7到版本1.6
- 9. 運行舊Java程序的
- 10. 在Java 1.6中編譯的應用程序的性能和1.7下運行jvm
- 11. 如何使用舊版本的Java FX?
- 12. 如何通過java程序找到jar的最新jar版本?
- 13. 運行可執行Java jar - 高版本vs低版本?
- 14. 如何在Java版本1.7上運行STS
- 15. 使用Gradle和JDK的新版本運行舊版FindBugs
- 16. 變化Maven的Java版本1.7到1.6在Ubuntu
- 17. 的iPad模擬器運行舊版本我的應用程序
- 18. 如何檢查正在運行的Java程序的Java版本使用
- 19. 如何編譯支持舊版本Java的.java?
- 20. 變化XMLEncoder的行爲從Java 1.6.x版遷移到1.7.x
- 21. 用java -jar運行scala應用程序
- 22. 在較新版本的Ruby上運行舊的Ruby版本化應用程序
- 23. 在舊版本的操作系統上運行應用程序
- 24. Xcode編譯並運行舊版本的應用程序
- 25. 在舊版本的.net上運行應用程序
- 26. 使用舊python版本的mod_wsgi運行時版本
- 27. VS運行舊版本的Silverlight應用程序而不是新版本
- 28. 用正確版本的scala運行jar
- 29. 如何阻止用戶使用舊版本的應用程序?
- 30. 啓動Java應用程序的新版本中打開舊版本
什麼是錯誤?這很可能是您需要最新的JDK來運行它的時期。 – Philippe
線程「main」中的異常java.lang.UnsupportedClassVersionError:tes:Unsupported major.minor版本51.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:634) 在java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) 在java.net.URLClassLoader.defineClass(URLClassLoader.java:277) 在java.net.URLClassLoader.access $ 000(URLClassLoader.java:73) 在java.net.URLClassLoader的$ 1.run(URLClassLoader.java:212) ...... 找不到主類:TES。程序將會退出。 – user1475288
錯誤在上面的註釋中看起來像這樣 – user1475288