본문 바로가기

전체 글

(41)
Docker Ubuntu Locale 설정으로 Maven Default Encoding 변경하기 이전 포스팅(https://junha.tistory.com/40)에서 Maven 의 pom.xml 을 수정해 Encoding을 UTF-8을 사용하도록 설정했었다. 이번 포스팅에서는 Platform Encoding 을 설정해 Maven Default Encoding 을 UTF-8으로 설정하는 방법을 알아본다. Ubuntu Docker Image Locale 정보 Docker Ubuntu 이미지에서 사용할 수 있는 Locale 은 POSIX(default), C, C.UTF-8 이다. 대부분 인코딩을 UTF-8으로 사용한다. Docker Hub의 Ubuntu 공식 이미지에 첨부된 설명에 따르면, C.UTF-8으로 충분하다고 나와있다. LC_ALL 환경변수에서 C.UTF-8 로케일 사용 도커를 실행할 때, L..
Maven의 Default Encoding 정보 11월 제품 빌드를 하고나서, 제품의 일부 기능이 제대로 되지 않는 것을 확인했다. 제품 코드 중에는 Guillemet(«, ») 기호를 사용하는 코드가 있는데, 기호가 "占쏙옙" 으로 표현되었다. 문제의 원인은 단순했다. 인코딩 정보를 UTF-8 로 설정하지 않아서 Guillemet기호가 "占쏙옙" 으로 나온 것이다. "Xtend User Guide" 에서 Guillemet 기호를 사용하려면 인코딩을 UTF-8 으로 설정하도록 나와있다. 9월 배포 버전에서는 발생하지 않은 문제였는데, 11월 배포 버전에서 문제가 발생한 것이다. pom.xml 에서 따로 인코딩을 설정하지 않은 상태였지만, '알아서 잘' 빌드되었었다. 이런저런 변경점을 알아본 결과, Jenkins 서버를 새로 구축했고 11월 릴리즈 제품..
모든 소프트웨어 모듈의 목적 1. 실행 중에 제대로 동작해야 한다. 2. 변경을 위해 존재한다. - 대부분의 모듈은 생명주기 동안 변경되기 때문에 간단한 작업만으로도 변경이 가능해야 한다. - 변경하기 어려운 모듈은 제대로 동작하더라도 개선해야 한다. 3. 코드를 읽는 사람과 소통하는 것이다. - 모듈은 특별한 훈련 없이도 개발자가 쉽게 읽고 이해할 수 있어야 한다. - 읽는 사람과 의사소통할 수 없는 모듈은 개선해야 한다. 즉, 모든 모듈은 제대로 실행돼야 하고, 변경에 용이해야 하며, 이해하기 쉬워야 한다.