본문 바로가기
반응형

분류 전체보기324

IntelliJ java class serialVersionUID 자동 생성 IntelliJ에서는 STS(Elipcse)처럼 java class에 implements Serializable를 선언하고 class에 마우스를 가져다 놓으면 serialVersionUID를 자동 생성하는 메뉴가 기본적으로 뜨지 않는다. serialVersionUID 자동 생성을 위해서는 아래와 같은 설정이 필요했다. 1. 먼저 IntelliJ의 Prefereneces.. 메뉴를 클릭한다. 2. Preferences 좌측 항목에서 Editor > Inspecions 를 클릭한다. 3. 다음으로 우측에 Java > Serialization issues > Serializable class without 'serialVerionUID' 항목를 체크해 준다. 4. STS(Eclipse)에와 동일하게 마우스를 .. 2022. 5. 28.
호메로스의 '일리아스' 읽기 - 강대진 일리아스를 읽기 전에 어떻게 읽으면 좋을지, 미리 알아두면 좋은 내용이 무엇일지 궁금해서 읽게 된 책이다. 책 분량은 약 600쪽이 넘어서 거의 한 달은 읽은것 같다. 책 내용은 일리아스 전체의 이야기 구조와 각 권 별로의 구조와 원문에 대한 설명들이 포함되어 있다. 다음에 일리아스를 읽을 때 참고하고자 주요 내용만 정리해본다. 일리아스는 전체 24권으로 내용은 트로이아 전쟁 중에 아킬레우스가 분노한 사건의 전말이다. 핵심 내용으로만 보자면 얼마 안되는 줄거리이지만 그 내용을 풀어가면서 나오는 많은 신화와 전쟁 전체에 대한 이야기들이 그리고 특히 각 신들과 인물들의 감정이 잘 나타나있는 것 같다. 그리고 '일리아스'와 '오뒷세이아'는 호메로스라는 시인이 지은 것으로 알고 있었는데 정말 호메로스라는 사람이.. 2022. 5. 13.
IntelliJ Gradle 빌드 디렉토리(out, build) 설정 IntelliJ에서 gradle 프로젝트로 개발을 할 때 이상한 현상을 발견했다. 프로젝트 구조는 아래와 같이 멀티 모듈 구조이고, Libaray모듈이 Application 모듈에 의존성(Library -> Application)으로 설정되어 Application모듈을 실행하는 구조였다. 프로젝트 구조 - parent - Library - Application Library모듈은 src/main/java 외에 src/main/resources도 포함되어 있어서 Application 모듈을 실행했을 때 모두 classpath로 참조가 가능해야하는 구조였다. 하지만 Application을 실행했을때 Application에서 Library모듈의 resources 파일들을 참조할 수 없는 에러가 발생했다. Ap.. 2022. 5. 6.
SpringBoot @RestControllerAdvice not working RestController 전역 예외처리를 위하여 @RestControllerAdvice를 적용하였다. 예외 타입 별로 리턴 메시지처리 등이 효율적으로 될 것 같아서 적용했는데 동작을 하지 않았다. 코드는 간단히 테스트용으로 아래와 같이 적용했다. @Slf4j @RestControllerAdvice public class MyControllerAdvice { @ExceptionHandler(MyException.class) @ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR) public String myExceptionHandler(Exception e) { return "myexception"; } @ExceptionHandler(NoHandlerFoundExcep.. 2022. 5. 6.
IntelliJ properties 파일 한글 설정 IntelliJ에서 메시지 등 설정을 위해 properties 파일을 사용할 때 한글이 깨져보이는 경우가 있다. 이는 properties파일은 기본적으로 ISO 8859-1 인코딩을 사용하도록 설계되어 있어서 그렇다고 한다. 예를 들어 아래와 같이 properties를 선언하고 한글을 입력할 경우 다음과 같은 나오는 경우이다. sample 메시지 한글 깨져 보임. IntelliJ Preferences 창에서 설정으로 한글깨짐 해결이 가능하다. Preferences > Editor > File Encodings > Properties Files 항목 에서 Default encoding for properties files을 UTF-8로 변경하고 우측의 Transparent vative-to-ascii co.. 2022. 5. 6.
Gradle Nexus Repository 설정 gradle을 사용하면서 repository를 사설repository인 Nexus를 사용하도록 설정하는 방법을 정리해본다. 사전에 Nexus에 Maven Central Repository 미러링 설정은 해두었다. 1. gradle wrapper 설정 gradle wrapper는 서로 다른 개발환경에서 각자의 gradle 버전에 영향을 받지않고 프로젝트에서 설정한 gradle을 사용하기 위한 방법이다. gradle-wrapper.properties 파일 수정 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists # distributionUrl=https\://services.gradle.org/distributions/gradle-6.6.1-b.. 2022. 5. 6.
Mac iTerm 터미널 prompt 간소화 - username hostname 제거 MAC에서 iTerm 터미널을 사용하다보면 프롬프트에 username, hostname이 길게 나와서 터미널 화면 너비를 좁게 써야할 경우에는 불편한 점이 있다. user-name@My-MacBook$ 간단한 설정을 통해서 프롬프트를 간소화 시킬 수 있는 방법 아래와 같다. 먼저 iTerm를 실행하고 Preferences... 메뉴를 실행 시킨다. 그리고 상단의 Profiles 탭을 선택하고 우측의 Command 항목에 Send text at start 필드에 아래와 같이 "export PS1="\$ "; clear;"를 입력한다. 그리고 iTerm를 다시 실행하면 프롬프트가 심플한게 떨어지는 것을 확인할 수 있다. 2022. 4. 29.
Kubernetes pod pending FailedScheduling - n node(s) had taints that the pod didn't tolerate Kubernetes에서 pod를 실행하고 'kubectl get pod' 로 pod 상태를 조회했을 때 pod 상태가 계속 pending 상태로 남아있고 시작이 되지 않는 상황이 발생했다. 처음에는 image를 받아오거나 Volume설정 등에 문제가 생겼나하고 의심을 했지만 describe 명령으로 pod상태를 자세히 확인 했을 때 "node(s) had taints that the pod didn't tolerate"라는 메시지를 확인했다. kubectl describe pod pod-xxxxxx[pod명] 이유는 FailedScheduling으로 pod를 실행할 node가 없다는 얘기였다. 테스트 환경으로 Master노드 하나에 pod들을 올릴 수 있도록 설정을 해뒀었는데 한번 더 아래 명령으로 확인.. 2022. 4. 26.
반응형