changki123's Foundation

Lambda hello world~ .jar

2024. 2. 21. 01:02 | Amazon Web Services


728x90

람다 생성 과정

 

바로 람다 만들기

 

이름 아무거나 만들고 java 11 사용

 

.jar 파일만들기

https://docs.aws.amazon.com/ko_kr/lambda/latest/dg/java-package.html

 

.zip 또는 JAR 파일 아카이브를 사용하여 Java Lambda 함수 배포 - AWS Lambda

계층을 Java와 같은 컴파일된 언어의 함수와 함께 사용하면 Python과 같은 해석된 언어의 함수와 함께 사용할 때와 같은 이점을 얻지 못할 수 있습니다. Java는 컴파일된 언어이므로 함수가 초기화

docs.aws.amazon.com

여길 참고해서

maven project 를 만들고

 

pom.xml <dependencies>추가

  <dependencies>
    <dependency>
      <groupId>com.amazonaws</groupId>
      <artifactId>aws-lambda-java-core</artifactId>
      <version>1.2.2</version>
    </dependency>
    <dependency>
      <groupId>com.amazonaws</groupId>
      <artifactId>aws-lambda-java-events</artifactId>
      <version>3.11.1</version>
    </dependency>
    <dependency>
      <groupId>com.amazonaws</groupId>
      <artifactId>aws-lambda-java-log4j2</artifactId>
      <version>1.5.1</version>
    </dependency>
  </dependencies>

 

jar을 위한 플러그인

  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-shade-plugin</artifactId>
        <version>3.2.2</version>
        <configuration>
          <createDependencyReducedPom>false</createDependencyReducedPom>
        </configuration>
        <executions>
          <execution>
            <phase>package</phase>
            <goals>
              <goal>shade</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>

 

이제 java 파일

package org.maven.study.test;

import com.amazonaws.services.lambda.runtime.Context;
import com.amazonaws.services.lambda.runtime.RequestHandler;

public class App implements RequestHandler<Object, String> {
    public String handleRequest(final Object input, final Context context) {
        System.out.println(input);
        return "Hello from Lambda!";
    }
}

 

해당 프로젝트에 오른쪽 클릭 Run as , Maven build 누른후 Goals 에 꼭꼭 "package" 라고 입력하고 Run 실행 target 에 jar 파일이 생성

해당 jar파일을 업로드!

이제 핸들러를 내 입맛에 맞게 설정

 

Test event

뭔진 모르겠는데 축하한다고한다

뭔지도 모르겠고 그냥 나왔다 내 핼로 어디갔지

그냥 그대로만 출력이 된다

대충 감각따라서 검색하고 붙여넣고 햇더니 이런다 코드는 나중에 수정하면 뭔가 될거같긴하다. 

 

 

리턴 아니고 프린트로 뽑으니까 클라우드와치에 뜬다.

728x90

'Amazon Web Services' 카테고리의 다른 글

lambda session id 자동 부여  (0) 2024.04.14
AWS Serverless Application Model  (0) 2024.03.07
람다람쥐썬더  (0) 2024.03.02
Lambda SES 이메일 보내기  (0) 2024.02.26
ELB 라우팅 알고리즘  (0) 2024.02.09