우테코 수료일이 다가오면서, 우테코에서 제공했던 AWS 계정 만료일도 코 앞으로 다가왔다.때문에 우리 팀 계정으로 서버를 이관하기 위해 사전 작업을 수행하는 과정에서 IAM 관리자 사용자에 Region 제한 설정을 하게 되어 글로 남겨보려고 한다. 문제 상황AWS에서 솔루션을 이용하다보면 실수로 타 리전을 이용하고 있었던 경험이 한 번쯤은 있을 것이다.이런 문제가 발생하면 사용할 리전에 동일한 설정을 반복해야하는 문제가 있고,거의 그럴 일은 없겠지만 타 리전에 실수로 만든 것을 모르고 넘어가게 된다면 비용 문제로도 이어진다. 이를 해결하고자 사용할 IAM 사용자에 권한 정책 설정을 통해 서울 리전만 사용 가능하도록 설정해보고자 했다. 설정 과정 사용할 IAM에 권한 추가 - 인라인 정책 생성 선택 ..
문제 상황자바 코드를 코틀린으로 마이그레이션 하는 과정 중, 상수 선언 과정에서 문제 상황을 겪게 되었다. public class SampleClass { private static final DateTimeFormatter DATE_TIME_FORMATTER = DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss"); //...}자바에서 객체를 static final을 통해 상수로 선언하는 것은 일반적으로 가능한 일이다. private const val DATE_TIME_FORMATTER: DateTimeFormatter = DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss")class SampleClass(하지만 상..
문제 상황왓캠퍼스 프로젝트를 Java/Spring -> Kotlin/Spring 으로 마이그레이션 하는 과정에서 하나의 문제를 마주했다.바로 'Kotlin 코드에서 Lombok 적용이 안 된다는 점' 이었다. 이에 따라 간편한 로깅을 위해 사용하던 Lombok의 @Slf4j 애노테이션까지 사용이 불가능해졌다.때문에 로깅을 해야하기도 하고, 이유도 궁금해서 해당 문제의 원인에 대해 찾아보게 되었다. Lombok이란?Lombok 공식문서의 소개에 따르면 Lombok은 아래와 같은 라이브러리이다.Project Lombok is a java library that automatically plugs into your editor and build tools, spicing up your java.Never wr..
문제상황 Java/Spring을 Kotlin/Spring으로 마이그레이션 하는 과정에서 Kotlin의 Lombok 사용에 어려움을 겪었다.그리고 그 이유 Lombok이 Javac의 Annotation Processing 과정에서 처리되는데, Javac보다 Kotlinc가 더 먼저 작동하여 Javac에서 Annotation Processing 과정을 통해 생성되는 코드를 Kotlin 코드에서는 알 수가 없기 때문임을 알게 되었다. 이 과정에서 Javac의 Annotation Processing을 포함한 전반적인 과정을 흝어보고 싶어 학습하여 기록해 두게 되었다. javac의 동작 과정 javac의 동작과정에 대해 자세히 파헤쳐보자. javac는 대략 아래 7가지 단계로 컴파일을 수행한다. 1. Parsi..