我試圖在Ubuntu 14.04 LTS上使用this tutorial安裝Amazon Mechanical Turk命令行工具。它需要Java,所以我安裝了OpenJDK7。但是,當試圖運行該命令時,我收到以下錯誤,互聯網通知我指出錯誤的Java版本。Amazon Mechanical Turk(AMT)命令行工具和Java版本
Exception in thread "main" java.lang.UnsupportedClassVersionError: Bad version number in .class file
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:621)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
at java.net.URLClassLoader.access$100(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:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
at com.amazonaws.mturk.service.axis.AWSService.<clinit>(AWSService.java:104)
at com.amazonaws.mturk.cmd.AbstractCmd.initService(AbstractCmd.java:119)
at com.amazonaws.mturk.cmd.AbstractCmd.run(AbstractCmd.java:143)
at com.amazonaws.mturk.cmd.GetBalance.main(GetBalance.java:28)
有的爲AMT工具的文件表明,我需要JRE 1.5(也有人說「最近期的版本」),所以我一直在試圖安裝。由於它不再通過apt-get可用,我下載了bin文件,並將其安裝到'/ home/USERNAME /'中,(我不使用機器,也不想處理在長文件夾鏈,所以我所有的AWS的東西在裏面),然後把我的AWS鍵和設置環境變量:
export JAVA_HOME="/home/USERNAME/jre1.5.0_22"
export MTURK_CMD_HOME="/home/USERNAME/aws-mturk-clt-1.3.1"
然後,檢查我的平衡,以確保一切配置,在指定的AWS Getting Started PDF,我仍然得到上面顯示的相同錯誤。
安裝JRE 1.5時我做錯了嗎?它仍在使用OpenJDK7,還是JRE 1.5也不行?我真的在我的智慧結束了。
Java是向後兼容的,所以任何將在1.5上運行將在1.7上運行。 – Kayaman
使用'java -version'來查看你使用的是哪個版本。這並不總是你的想法。 – Kayaman
java -version說'程序'java'可以在以下軟件包中找到: * default-jre * gcj-4.8-jre-headless * openjdk-7-jre-headless * gcj-4.6-jre-無頭的 * openjdk-6-jre-headless' – Chris