AWS java sdk 1.10.2 中不存在包 com.amazonaws.services.lambda.runtime
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/31152763/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
package com.amazonaws.services.lambda.runtime does not exist in AWS java sdk 1.10.2
提问by Arthur
I am trying the Java code example in the Getting Started (Authoring AWS Lambda Code in Java)page, but am stuck as com.amazonaws.services.lambda.runtimepacakge seems to be missing
我正在尝试入门(使用Java编写 AWS Lambda 代码)页面中的 Java 代码示例,但由于com.amazonaws.services.lambda.runtime pacakge似乎丢失而被卡住
Here is the sample code:
这是示例代码:
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);
}
}
I encounter the same error both in Netbeans and through command line (specifying the aws sdk thorugh -cp argument) from the first two imports of the code:
我在 Netbeans 中和通过命令行(指定 aws sdk thorugh -cp 参数)从代码的前两个导入中遇到相同的错误:
package com.amazonaws.services.lambda.runtime does not exist
包 com.amazonaws.services.lambda.runtime 不存在
Note importing other packages from the SDK works fine, as per third and fourth imports from the above code (the s3 imports which i put in just to test).
请注意,从 SDK 导入其他包可以正常工作,根据上述代码中的第三个和第四个导入(我放入只是为了测试的 s3 导入)。
I am using version 1.10.2(aws-java-sdk-1.10.2.zip) of the AWS Java SDK, downloaded from http://sdk-for-java.amazonwebservices.com/latest/aws-java-sdk.zip
我使用的是从http://sdk-for-java.amazonwebservices.com/latest/aws-java-sdk下载的 AWS Java SDK 1.10.2版(aws-java-sdk-1.10.2.zip) 。压缩
Any directions/suggestions would be much appreciated. Thanks!
任何方向/建议将不胜感激。谢谢!
回答by David Murray
Both of those classes are contained in the aws-lambda-java-corejar, which is distributed separately from the AWS SDK. You can download it from maven central at the link above if you're not using maven/gradle/some other build system that can natively pull from maven central.
这两个类都包含在aws-lambda-java-corejar 中,该 jar 与 AWS SDK 分开分发。如果您不使用 maven/gradle/其他一些可以从 maven central 本地拉取的构建系统,您可以从上面的链接从 maven central 下载它。
回答by kartik
- Add AWS plugins within eclipse from market place, make aws lambda project.
Use below three dependencies to make fat jar.
<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>
- 从市场上的 eclipse 中添加 AWS 插件,制作 aws lambda 项目。
使用以下三个依赖项来制作 fat jar。
<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>
回答by dwalend
After some searching I found com.amazonaws.services.lambda.runtime.Context in http://mvnrepository.com/artifact/com.amazonaws/aws-lambda-java-core/1.1.0. (I prefer this site to search.maven.org. mvnrepository.com gets right to the heart of my problem by supplying the sbt build line.)
经过一番搜索,我在http://mvnrepository.com/artifact/com.amazonaws/aws-lambda-java-core/1.1.0 中找到了 com.amazonaws.services.lambda.runtime.Context 。(与 search.maven.org 相比,我更喜欢这个站点。mvnrepository.com 通过提供 sbt 构建行直接解决了我的问题的核心。)
The class is not in aws-java-sdk-lambda , nor is it in aws-java-sdk-core, or aws-java-sdk .
该类不在 aws-java-sdk-lambda 中,也不在 aws-java-sdk-core 或 aws-java-sdk 中。
回答by Yuchen Zhong
For those who are using sbt:
对于那些使用 sbt 的人:
libraryDependencies ++= Seq(
"com.amazonaws" % "aws-java-sdk" % "1.11.241",
"com.amazonaws" % "aws-lambda-java-core" % "1.2.0"
)
Check the links for the lastest version:
检查最新版本的链接:
回答by Baatr
Arthur,
亚瑟,
You trying use java code sample from AWS Lambdafor another product Amazon AWS SDK For Java.
您尝试将来自AWS Lambda 的java 代码示例用于另一个产品 Amazon AWS SDK For Java。
Please read AWS Lambda welcome-page and maybe after steps for (create account and others) you can to download package with your classes (Context, LambdaLogger)
请阅读 AWS Lambda 欢迎页面,也许在(创建帐户和其他)步骤之后,您可以下载包含您的类的包(上下文、LambdaLogger)
回答by ljcundiff
I found com.amazonaws.services.lambda.runtime.LambdaLogger in: https://mvnrepository.com/artifact/com.amazonaws/aws-lambda-java-log4j/1.0.0
我在以下位置找到了 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>