Pregunta AWS SDK para Java Tutorial muestra clases faltantes


Siguiendo Comenzando con el AWS SDK para Java tutorial, para ejecutar el AwsConsoleApp muestra:

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

Obtengo los siguientes problemas:

===========================================
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

El mismo SDK completo que se cargó en el classpath en tiempo de compilación también se proporciona durante el tiempo de ejecución, por lo que no puedo determinar qué falta.


7
2018-04-23 15:22


origen


Respuestas:


Entre el Requisitos previos de SDK, tienes:

Requiere Apache Commons (Códec, Cliente HTTPy Explotación florestal) paquetes de terceros, que están incluidos en el directorio de terceros del SDK.

así que los agregué a mi .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/*

7
2018-04-23 16:46



En Windows, agregue estas rutas a su sistema 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

luego asegúrese de comenzar con una nueva ventana de solicitud de cmd después de aplicar estos.


2
2017-09-28 23:07