2017-04-17 69 views
1

剛剛安裝了transcrypt。自動測試編譯成功,但在縮小時失敗。我嘗試更新到JRE 8,但同樣的錯誤。任何建議,使其工作?Transcrypt自動測試編譯失敗,顯然在縮小步驟

謝謝!

$ uname -a 
Darwin Michaels-Mac-mini 15.6.0 Darwin Kernel Version 15.6.0: Mon Jan 9 23:07:29 PST 2017; root:xnu-3248.60.11.2.1~1/RELEASE_X86_64 x86_64 

$ python --version 
Python 3.5.1 :: Anaconda 4.0.0 (x86_64) 

$ transcrypt -h 
Transcrypt (TM) Python to JavaScript Small Sane Subset Transpiler Version 3.6.24 
Copyright (C) Geatec Engineering. License: Apache 2.0 

$ java -version 
java version "1.6.0_65" 
Java(TM) SE Runtime Environment (build 1.6.0_65-b14-468-11M4833) 
Java HotSpot(TM) 64-Bit Server VM (build 20.65-b04-468, mixed mode) 

$ transcrypt -b autotest.py 
Transcrypt (TM) Python to JavaScript Small Sane Subset Transpiler Version 3.6.24 
Copyright (C) Geatec Engineering. License: Apache 2.0 

Saving result in: /Users/mellis/anaconda3/lib/python3.5/site-packages/transcrypt/development/automated_tests/transcrypt/__javascript__/autotest.js 
Saving minified result in: /Users/mellis/anaconda3/lib/python3.5/site-packages/transcrypt/development/automated_tests/transcrypt/__javascript__/autotest.min.js 
Exception in thread "main" java.lang.UnsupportedClassVersionError: com/google/javascript/jscomp/CommandLineRunner : Unsupported major.minor version 51.0 
    at java.lang.ClassLoader.defineClass1(Native Method) 
    at java.lang.ClassLoader.defineClassCond(ClassLoader.java:637) 
    at java.lang.ClassLoader.defineClass(ClassLoader.java:621) 
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141) 
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:283) 
    at java.net.URLClassLoader.access$000(URLClassLoader.java:58) 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:197) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247) 

Ready 

回答

1

從看來,當你安裝了JRE 8,你的系統仍然使用JRE 6的控制檯輸出:

$ Java的版本

Java版本 「1.6.0_65」

的Java(TM)SE運行時環境(建立1.6.0_65-b14-468-11M4833)

爪哇熱點(TM)64位服務器VM(建立20.65-b04-468,混合模式)

由於你在蘋果公司,應該有一個「系統偏好」對話框。只要您的計算機上存在多個JRE版本,此對話框中應該有一個項目,允許您更改Java的設置,包括默認的哪個版本。

參見:

java.lang.UnsupportedClassVersionError

您還可以更改通過命令行這些設置,請參閱:

How to set or change the default Java (JDK) version on OS X?

+0

謝謝,雅克。這些鏈接指向了正確的方向。我最終通過找到新的java可執行文件並在我的虛擬環境中爲它創建一個符號鏈接來修復它。編譯autotest.py現在完成並生成縮小文件。 –