1

我正在努力用 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 的初学者。

非常感谢

4

1 回答 1

2

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

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
于 2012-07-10T16:47:25.433 回答