java illegal character: '\ufeff' 오류 원인 및 수정
메이븐 빌드 중 발생한 오류 메시지. 소스코드 배포를 위해 빌드 하던 중 java 파일 2개에서 오류가 발생했습니다.
java illegal character: '\ufeff'
1. 원인 UTF-8(BOM)
오류 원인으로 지목된 java파일은 다른 프로젝트에 있는 파일의 소스 코드를 가져온 파일인데 이때 캐릭터셋에 문제가 발생한 것 같습니다.
파일 인코딩을 확인해보니 캐릭터셋이 UTF-8이 아니라 UTF-8(BOM)으로 되어있었습니다. 이클립스에는 따로 오류가 표시 되지 않아서 몰랐다가 빌드 되면서 오류가 발생해 긴급 재수정.
2. UTF-8(BOM) 수정 작업
이클립스는 UTF-8(BOM) 을 바꿔주지 못함 |
이클립스는 UTF-8(BOM) 형식을 UTF-8 로 바꿔주는 기능이 없기 때문에 java파일을 바탕화면에 복사하고 메모장으로 열어 UTF-8로 다시 저장했습니다.
메모장은 UTF-8(BOM) -> UTF-8 형식으로 변환 가능 |
수정 후 다시 빌드 해보니 오류 없이 잘 됩니다.