2026/10/25

오늘의 이야기

Eclipse에서 Javadoc Export 시 한글 인코딩 오류 해결 방법


encoding



 


Eclipse에서 Javadoc을 생성하려고 할 때 소스 코드에 포함된 한글 때문에 오류가 발생하는 경우가 있습니다. 대부분은 Javadoc 생성 과정에서 소스 파일의 인코딩을 올바르게 인식하지 못해 발생하는 문제입니다. 이번 글에서는 Eclipse에서 Javadoc Export 시 발생하는 한글 인코딩 오류를 해결하는 방법을 정리해 보겠습니다.




1. Javadoc 생성 시 인코딩 옵션 지정하기


가장 많이 사용하는 방법으로, Javadoc 생성 옵션에 인코딩 정보를 직접 지정하는 것입니다.



  1. Project → Generate Javadoc 또는 Export → Java → Javadoc 선택

  2. Extra Javadoc Options 항목에 아래 옵션 추가


-encoding UTF-8 -charset UTF-8 -docencoding UTF-8

각 옵션의 의미는 다음과 같습니다.



  • -encoding : 소스 파일을 읽을 때 사용할 인코딩

  • -charset : 생성되는 HTML 문서의 문자셋

  • -docencoding : 생성되는 문서 파일의 인코딩




2. 프로젝트 인코딩 확인하기


프로젝트 자체가 UTF-8이 아닌 다른 인코딩으로 설정되어 있다면 Javadoc 생성 시 문제가 발생할 수 있습니다.


확인 경로


프로젝트 우클릭
└ Properties
└ Resource
└ Text file encoding

가능하면 UTF-8로 설정하는 것을 권장합니다.




3. Eclipse 워크스페이스 인코딩 확인하기


프로젝트가 워크스페이스 설정을 따르는 경우 워크스페이스 인코딩도 확인해야 합니다.


Window
└ Preferences
└ General
└ Workspace
└ Text file encoding

여기 역시 UTF-8로 설정되어 있는지 확인합니다.




4. JDK 환경에서 직접 확인하기


Eclipse 설정 문제인지, 실제 소스 파일 문제인지 구분하기 위해 명령행에서 직접 Javadoc을 생성해 볼 수 있습니다.


javadoc -encoding UTF-8 -charset UTF-8 -docencoding UTF-8 *.java

명령행에서는 정상적으로 생성되는데 Eclipse에서만 실패한다면 Eclipse 설정 문제일 가능성이 높습니다.




5. 자주 발생하는 오류 사례


Case 1. UTF-8로 읽는데 실제 파일은 MS949인 경우


unmappable character for encoding UTF8

실제 소스 파일은 MS949(EUC-KR)인데 Javadoc이 UTF-8로 읽고 있는 상황입니다.


-encoding MS949

옵션을 적용하거나 소스 파일을 UTF-8로 변환해야 합니다.


Case 2. MS949로 읽는데 실제 파일은 UTF-8인 경우


unmappable character for encoding MS949

소스 파일은 UTF-8인데 Javadoc이 MS949로 읽고 있는 상황입니다.


-encoding UTF-8

옵션을 변경하여 해결할 수 있습니다.




정리


Eclipse에서 Javadoc 생성 시 한글 인코딩 오류가 발생한다면 다음 순서로 확인해 보세요.



  1. Javadoc 옵션에 -encoding, -charset, -docencoding 지정

  2. 프로젝트 인코딩 확인

  3. 워크스페이스 인코딩 확인

  4. JDK 명령행에서 직접 Javadoc 생성 테스트

  5. 실제 소스 파일 인코딩(UTF-8 / MS949) 확인


대부분의 경우 UTF-8로 통일하고 아래 옵션을 지정하면 문제를 해결할 수 있습니다.


-encoding UTF-8 -charset UTF-8 -docencoding UTF-8




댓글 없음:

댓글 쓰기

오늘의 이야기

Eclipse에서 Javadoc Export 시 한글 인코딩 오류 해결 방법 encoding   Eclipse에서 Javadoc을 생성하려고 할 때 소스 코드에 포함된 한글 때문에 오류가 발생하는 경우가 ...