【问题标题】:Java Compile Error (Amazon Mechanical Turk & REST Sample in Java)Java 编译错误(Java 中的 Amazon Mechanical Turk 和 REST 示例)
【发布时间】:2012-07-10 04:34:57
【问题描述】:

我正在努力用 Java 启动 Amazon Mechanical Turk。

这是项目的链接。 (mturk-rest-java-1.0.zip可以在网站底部下载) http://aws.amazon.com/code/Amazon-Mechanical-Turk/581

当我解压缩并尝试使用以下步骤运行示例时:

  1. 更新 MTGettingStarted.java 文件以包含您的访问标识符。

  2. 通过输入以下命令编译示例: javac *.java

  3. 通过输入以下命令运行示例:
    java MTGettingStarted

编译会报如下错误:

./src/com/amazon/mturk/requester/RESTResponse.java:23: package org.apache.xpath does not exist
import org.apache.xpath.*;
^
./src/com/amazon/mturk/requester/RESTResponse.java:108: cannot find symbol
symbol  : variable XPathAPI
location: class src.com.amazon.mturk.requester.RESTResponse
            str = XPathAPI.eval(doc, xpathString).toString();
                  ^
./src/com/amazon/mturk/requester/RESTResponse.java:125: cannot find symbol
symbol  : variable XPathAPI
location: class src.com.amazon.mturk.requester.RESTResponse
            NodeList nl = XPathAPI.selectNodeList(doc, xpathString);
                          ^
./src/com/amazon/mturk/requester/Utils.java:3: package org.apache.commons.codec.binary does not exist
import org.apache.commons.codec.binary.*;
^
./src/com/amazon/mturk/requester/Utils.java:58: cannot find symbol
symbol  : variable Base64
location: class src.com.amazon.mturk.requester.Utils
            signature = new String(Base64.encodeBase64(rawHmac));
                                   ^
Note: ./src/com/amazon/mturk/requester/RESTResponse.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
5 errors

另外,我无法运行提供的 MTGettingStarted.java

Exception in thread "main" java.lang.NoClassDefFoundError: MTGettingStarted/java
Caused by: java.lang.ClassNotFoundException: MTGettingStarted.java
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    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)

我该如何解决这个问题?抱歉,我是 Java 的初学者。

非常感谢

【问题讨论】:

    标签: java mechanicalturk


    【解决方案1】:

    这些命令缺少类路径规范。尝试编译它:

    javac -cp bin -d bin MTGettingStarted.java 
    

    然后,运行:

    java -cp bin:lib/commons-codec-1.3.jar:lib/serializer.jar:lib/xalan.jar:lib/xercesImpl.jar:lib/xml-apis.jar MTGettingStarted
    

    【讨论】:

    • 谢谢!然后在我运行您的第二个命令后,它出现: java.net.UnknownHostException: integ-node-03672.sea3.amazon.com 我想可能的原因是我目前没有提供 AWS 帐户,因此无法正常连接。
    • 拿到账号tmr后,可以再次测试。
    • Banthar,如果我想重新编译/mturk-rest-java-1.0/mturkrest/src/com/amazon/mturk/requester下的四个.java,类路径规范应该放什么?谢谢
    • @user1020390 在lib 目录中添加所有jar。就像在第二个命令中一样。
    猜你喜欢
    • 1970-01-01
    • 2015-07-10
    • 2016-01-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多