2012-04-23 12 views
7

Obserwowany Pierwsze kroki z AWS SDK for Java samouczka, aby uruchomić AwsConsoleApp próbki:AWS SDK for Java Tutorial próbki brakujące klasy

java -cp .:/Users/marius/Dev/aws-java-sdk-1.3.8/lib/aws-java-sdk-1.3.8.jar AwsConsoleApp 

uzyskać następujące zagadnienia:

=========================================== 
Welcome to the AWS Java SDK! 
=========================================== 
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory 
    at com.amazonaws.util.VersionInfoUtils.<clinit>(VersionInfoUtils.java:41) 
    at com.amazonaws.ClientConfiguration.<clinit>(ClientConfiguration.java:31) 
    at com.amazonaws.services.ec2.AmazonEC2Client.<init>(AmazonEC2Client.java:95) 
    at AwsConsoleApp.init(AwsConsoleApp.java:93) 
    at AwsConsoleApp.main(AwsConsoleApp.java:105) 
Caused by: java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory 
    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) 
    ... 5 more 

Ten sam pełny zestaw SDK, który został załadowany w ścieżce klas w czasie kompilacji, jest podawany także w czasie wykonywania, więc nie mogę określić, czego brakuje.

Odpowiedz

7

Wśród SDK prerequisites masz:

Wymaga Apache Commons (Codec, klient HTTP i Logging) Opakowania firm, które są zawarte w trzeciej partii katalog SDK.

więc po prostu dodaje je do mojego .bashrc:

# Apache Commons Logging 
export CLASSPATH=$CLASSPATH:/Users/marius/Dev/aws-java-sdk-1.3.8/third-party/commons-logging-1.1.1/* 
# Apache Commons HTTP Client 
export CLASSPATH=$CLASSPATH:/Users/marius/Dev/aws-java-sdk-1.3.8/third-party/httpcomponents-client-4.1.1/* 
# Apache Commons Codec 
export CLASSPATH=$CLASSPATH:/Users/marius/Dev/aws-java-sdk-1.3.8/third-party/commons-codec-1.3/* 
2

W systemie Windows dodaj te ścieżki do systemu CLASSPATH

C:\aws-java-sdk-1.3.21.1\lib\aws-java-sdk-1.3.21.1.jar; 
C:\aws-java-sdk-1.3.21.1\third-party\commons-logging-1.1.1\commons-logging-1.1.1.jar; 
C:\aws-java-sdk-1.3.21.1\third-party\commons-codec-1.3\commons-codec-1.3.jar; 
C:\aws-java-sdk-1.3.21.1\third-party\httpcomponents-client-4.1.1\httpclient-4.1.1.jar; 
C:\aws-java-sdk-1.3.21.1\third-party\httpcomponents-client-4.1.1\httpcore-4.1.jar 

a następnie upewnij się, aby rozpocząć nową cmd okna wiersza po zastosowanie tych.