2015-07-01 20 views
15

tôi đang cố gắng mã ví dụ Java trong trang Getting Started (Authoring AWS Lambda Code in Java), nhưng đang mắc kẹt như com.amazonaws.services.lambda.runtime pacakge có vẻ là thiếugói com.amazonaws.services.lambda.runtime không tồn tại trong AWS java sdk 1.10.2

đây là đoạn mã mẫu:

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); 
    } 
} 

tôi gặp phải những lỗi tương tự cả trong Netbeans và thông qua dòng lệnh (xác định AWS SDK thorugh luận -cp) từ hai hàng nhập khẩu đầu tiên của mã:

gói com.amazonaws.services.lambda.runtime không tồn tại

Note import các gói khác từ SDK hoạt động tốt, theo nhập khẩu thứ ba và thứ tư từ các mã trên (nhập khẩu s3 mà tôi đưa vào chỉ để kiểm tra).

Tôi đang sử dụng phiên bản 1.10.2 (aws-java-sdk-1.10.2.zip) của AWS Java SDK, tải về từ http://sdk-for-java.amazonwebservices.com/latest/aws-java-sdk.zip

Bất kỳ hướng/góp ý sẽ được nhiều đánh giá cao. Cảm ơn!

Trả lời

21

Cả hai lớp này đều được chứa trong bình aws-lambda-java-core, được phân phối riêng biệt với SDK AWS. Bạn có thể tải xuống từ trung tâm maven ở liên kết ở trên nếu bạn không sử dụng maven/gradle/một số hệ thống xây dựng khác có thể tự nhiên kéo từ trung tâm maven.

+0

Cảm ơn David - Tôi đã đấu tranh để tìm liên kết tải xuống từ AWS, nhưng có thể lấy nó từ Maven theo lời khuyên của bạn và việc nhập không hoạt động! Chúc mừng. – Arthur

1

Arthur,

Bạn đang cố gắng sử dụng java mẫu mã từ AWS Lambda cho một sản phẩm Amazon AWS SDK For Java.

Vui lòng đọc AWS Lambda chào đón trang và có lẽ sau khi bước (tạo tài khoản và những người khác), bạn có thể tải gói với lớp học của bạn (Context, LambdaLogger)

+0

Các câu trả lời chỉ liên kết được khuyến khích ở đây vì các liên kết có thể bị chết trong tương lai. Tôi đề nghị bạn chỉnh sửa câu trả lời của bạn với trích dẫn từ các nguồn bạn trích dẫn. –

+0

@AnirudhSharma, OK, xong rồi. – Baatr

+0

Cảm ơn Battr đã làm rõ sự khác biệt giữa thư viện AWS SDK và thư viện AWS Lambda. – Arthur

2

Sau khi một số tìm kiếm tôi thấy com.amazonaws.services. lambda.runtime.Context trong http://mvnrepository.com/artifact/com.amazonaws/aws-lambda-java-core/1.1.0. (Tôi thích trang web này để tìm kiếm.maven.org. Mvnrepository.com được quyền vào trung tâm của vấn đề của tôi bằng cách cung cấp các dòng xây dựng sbt.)

Lớp học không nằm trong aws-java-sdk-lambda, cũng không phải là nó trong aws-java-sdk-core, hoặc aws-java-sdk.

1
  1. Thêm plugin AWS trong nhật thực từ diễn biến thị trường, làm cho AWS dự án lambda.
  2. Sử dụng dưới ba phụ thuộc để tạo bình sữa.

    <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> 
    
Các vấn đề liên quan