2016-07-26 2 views
1

Я пытаюсь следовать примеру AWS Lambda Java: http://docs.aws.amazon.com/lambda/latest/dg/with-s3-example-deployment-pkg.html#with-s3-example-deployment-pkg-javaAWS Lambda Java, S3 конфиг

Создан новый класс LambdaFunctionHandler придерживаться в S3 изображение кода, модифицирующего лямбда. Добавлено aws-lambda-java-core 1.0.0, aws-lambda-java-events 1.0.0, maven-shade-plugin 2.4.3 и aws-java-sdk-core 1.11.0 для зависимостей maven. Создал банку и получил сообщение об ошибке после загрузки и тестирования лямбда. появляется

следующая ошибка:

START RequestId: 9b800497-52c2-11e6-a2c2-416f188f3ed0 Version: $LATEST 
Error loading class LambdaFunctionHandler: com/amazonaws/services/s3/AmazonS3: class java.lang.NoClassDefFoundError 
java.lang.NoClassDefFoundError: com/amazonaws/services/s3/AmazonS3 
    at java.lang.Class.forName0(Native Method) 
    at java.lang.Class.forName(Class.java:348) 
Caused by: java.lang.ClassNotFoundException: com.amazonaws.services.s3.AmazonS3 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357) 
    ... 2 more 

Я использовал эти номера версий, потому что другие ответы, казалось, ссылаться на эти конкретные версии.

Просто, чтобы убедиться, что я не просто использовал maven неправильно, я использовал плагин AWS для Eclipse для создания проекта AWS Lambda и по-прежнему приводил к той же ошибке.

ответ

0

Вам нужно добавить де S3 DEPENDENCY

<dependency> 
    <groupId>com.amazonaws</groupId> 
    <artifactId>aws-java-sdk-s3</artifactId> 
    <version>1.11.0</version> 
</dependency> 

Или вы можете просто положить

<dependency> 
    <groupId>com.amazonaws</groupId> 
    <artifactId>aws-java-sdk-s3</artifactId> 
    <version>1.11.0</version> 
</dependency> 

Это один имеет библиотеки для всех служб.

Смежные вопросы