본문 바로가기
Game Dev/MineCraft - Mod

빌드 최적화 / 빌드시 한글주석 때문에 별 외계어가 뜰때

by [방울] 2014. 12. 1.

 

 

 

 

빌드해서 마크키기 귀찮아서 이클립스에서 디버깅하면서 모드개발을 쮸꾸쮸꾸 하다가 어느날 한번 마크내에서 잘 작동하나 확인해보려고 빌드하는순간..!!

 

아주그냥 연설하네

 

저딴식으로 인코딩에러가 쮸꾸쮸꾸 나는 상황을 여러분들도 맛보셨을겁니다.

이클립스안에서는 인코딩을 UTF-8로 바꿨는데 빌드할때는 인코딩이 UTF-8이 아닌 기본값인 MS949 인코딩으로 빌드되어서 발생하는 에러입니다.

어짜피 한글은 대부분 주석이라 상관없는데 저렇게 빌드할때 계속 에러가 발생하면 깔끔한 느낌도 안들고 나중에 진짜 에러가 발생했을때는 찾기가 힘들어질 수 있죠.

 

 

그러므로 이클립스에서 build.gradle 파일을 드래그 & 드롭으로 열어줍니다. (노트패드++같은 텍스트 편집기 사용하셔도 되는데, 저는 작업 편의상 이클립스내에서 하겠습니다.)

 

이런식으로 저 부분에 추가해줍니다.

 tasks.withType(JavaCompile) {
    options.encoding = "UTF-8"
}

 

이는 빌드할때 인코딩을 UTF-8로 설정한다는 뜻입니다.

라고하면 된다는데 왜 저는 안될까요 ㅡㅅㅡ....

1.7.2 버전에선 확실히 된다는것같은데 1.7.10은 뭔가 다른 설정이 필요한가봅니다.

 

덧글에서 Jaden 님이 알려주셨습니다.

Compile -> JavaCompile 로 수정하면 된다고 합니다.

아직 테스트는 안해보았습니다.

 

 

 

 

빌드하실때 이전에 패키지명 바꾸고 클래스명 바꾸면서 자주 빌드를 하셨었다면, 앞으로는 빌드전에 gradlew clean 을 입력하신 후에 gradlew build 를 입력해주세요.

꼭 안해도 빌드후 모드 사용에 문제는 없지만, 클린을 안하면 필요없는 쓰레기 파일들도 같이 빌드가 되어서 모드파일에 포함되어버리기 때문에 보기가 좋지 않습니다.

용량도 늘어나구요.

 

이때 주의하실점은, build 폴더가 통채로 삭제되니 빌드 폴더에 모드를 버전별로 모아두고 있으신분들은 주의해주시기 바랍니다.

댓글