Пакет com.amazonaws.services.lambda.runtime не существует в AWS java sdk 1.10.2
Я пытаюсь привести пример кода Java в странице" Начало работы (авторский AWS Lambda Code на Java)), но я застрял как com.amazonaws.services.lambda.runtime pacakge, кажется, отсутствует
Вот пример кода:
package example;
import com.amazonaws.services.lambda.runtime.Context; //package does not exist error
import com.amazonaws.services.lambda.runtime.LambdaLogger; // package does not exist error
import com.amazonaws.services.s3.AmazonS3; // import works (not needed, I've put them in for testing import)
import com.amazonaws.services.s3.model.S3Object; // import works (not needed, I've put them in for testing import)
public class Hello {
public String myHandler(int myCount, Context context) {
LambdaLogger logger = context.getLogger();
logger.log("received : " + myCount);
return String.valueOf(myCount);
}
}
Я сталкиваюсь с той же ошибкой как в Netbeans, так и через командную строку (с указанием аргумента aws sdk thorugh -cp) из первых двух импортов кода:
пакет com.amazonaws.services.lambda.runtime не существует
Примечание. Импорт других пакетов из SDK работает нормально, в соответствии с третьим и четвертым импортированием из вышеуказанного кода (импорт s3, который я установил для тестирования).
Я использую версию 1.10.2 (aws-java-sdk-1.10.2.zip) SDK Java SDK, загруженную из http://sdk-for-java.amazonwebservices.com/latest/aws-java-sdk.zip
Любые указания/предложения были бы очень оценены. Спасибо!
Ответы
Ответ 1
Оба эти класса содержатся в банке aws-lambda-java-core, который распространяется отдельно от SDK AWS. Вы можете загрузить его из центра maven по ссылке выше, если вы не используете maven/gradle/какую-то другую систему сборки, которая может изначально извлекаться из центрального центра.
Ответ 2
После некоторого поиска я нашел com.amazonaws.services.lambda.runtime.Context в http://mvnrepository.com/artifact/com.amazonaws/aws-lambda-java-core/1.1.0. (Я предпочитаю этот сайт для поиска .maven.org. Mvnrepository.com получает право на сердце моей проблемы, поставляя строку сборки sbt.)
Класс не находится в aws-java-sdk-lambda, равно как и в aws-java-sdk-core или aws-java-sdk.
Ответ 3
- Добавьте плагины AWS в eclipse с рынка, создайте проект aws lambda.
-
Используйте ниже трех зависимостей, чтобы сделать жировую банку.
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk-lambda</artifactId>
<version>1.11.76</version>
</dependency>
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-lambda-java-core</artifactId>
<version>1.1.0</version>
</dependency>
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-lambda-java-events</artifactId>
<version>1.3.0</version>
</dependency>
Ответ 4
Артур,
Вы пытаетесь использовать образец кода Java из AWS Lambda для другого продукта Amazon AWS SDK для Java.
Пожалуйста, прочитайте приветственную страницу AWS Lambda и, возможно, после шагов (создать учетную запись и другие) вы можете загрузить пакет с вашими классами (Context, LambdaLogger)
Ответ 5
Я нашел com.amazonaws.services.lambda.runtime.LambdaLogger в: https://mvnrepository.com/artifact/com.amazonaws/aws-lambda-java-log4j/1.0.0
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-lambda-java-log4j</artifactId>
<version>1.0.0</version>
</dependency>
Ответ 6
Для тех, кто использует sbt:
libraryDependencies ++= Seq(
"com.amazonaws" % "aws-java-sdk" % "1.11.241",
"com.amazonaws" % "aws-lambda-java-core" % "1.2.0"
)
Проверьте ссылки для последней версии: