<aside> 💡
java-eventsを触ってみる
</aside>
$ git clone [<https://github.com/awsdocs/aws-lambda-developer-guide.git>](<https://github.com/awsdocs/aws-lambda-developer-guide.git>)
$ cd aws-lambda-developer-guide/sample-apps/java-events
java-events$ ./1-create-bucket.sh
make_bucket: lambda-artifacts-a5e4xmplb5b22e0d #結果
エラー発生(DskipTestsの部分がエラーを起こしている)
java-events$ ./2-deploy.sh mvn
[INFO] Scanning for projects...
[INFO] -----------------------< com.example:java-events >-----------------------
[INFO] Building java-events-function 1.0-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
...
./2-deploy.sh mvn clean install -DskipTests
[INFO] Scanning for projects...
[INFO] -----------------------< com.example:java-events >-----------------------
[INFO] Building java-events-function 1.0-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
...
<aside> ☝🏻
色んなハンドラ変化なかったのでファイルを見ていく
</aside>
Lambda関数のデプロイ定義ファイル(テンプレート)
AWSTemplateFormatVersion: '2010-09-09'
Transform: 'AWS::Serverless-2016-10-31'
Description: An AWS Lambda application that calls the Lambda API.
Resources:
function:
Type: AWS::Serverless::Function
Properties:
CodeUri: build/distributions/java-basic.zip
Handler: example.HandlerDivide
Runtime: java21
Description: Java function
MemorySize: 2048
Timeout: 10
# Function's execution role
Policies:
- AWSLambdaBasicExecutionRole
- AWSLambda_ReadOnlyAccess
- AWSXrayWriteOnlyAccess
- AWSLambdaVPCAccessExecutionRole
Tracing: Active
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
int sum = 0;
for (int num : numbers) {
sum += num;
}
System.out.println(sum); // 出力: 15
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
int sum = numbers.stream().mapToInt(n -> n).sum();
System.out.println(sum); // 出力: 15