0. 들어가기 전에


이 강좌는 님들이 Java에 대한 기본적인 것을 알고 있다는 전제하에 쓰여진 강좌이기 때문에

어떤어떤거 이렇게 응용하고 싶은데 어떻게 하나요? 라는 질문은 받고 따로 강좌를 쓰거나 답변을 드리겠지만

Syntax 에러에 대해서는 절대로 질문을 받지 않습니다.


괜히 사람 암걸리게 하지 마세요.


1. 환경 구축하기


포지 모드 개발 환경을 조성하기 위해서는 포지 다운로드 페이지에서 src를 받아주어야 합니다.



저 같은 경우엔 항상 Recommended(추천된, 추천하는) 버전을 사용합니다. 지금 1230버전으로 강좌를 진행하겠습니다.

Java에 대한 기본적인 것을 알고 있다는 전제가 깔려 있기 때문에 eclipse와 JDK가 설치되어 있다고 믿겠습니다.


2. 압축풀기



적당한 곳에 압축을 풉니다. 저는 D:\LoveHolyTech\ 폴더에 풀겠습니다.


3. 작업공간과 eclipse 프로젝트 파일 생성하기



쉬프트를 누른채로 오른쪽 클릭을 하면 여기서 명령어창 열기라는게 보일껍니다. (한글로 비슷한게 있을거에요.)

이걸 눌러줍시다.



gradlew setupDecompWorkspace


이렇게 하시면 gradle가 자동으로 작업공간을 만들어줍니다.

시간이 걸리는 작업이니 기다려주시고

10분 이상이 걸린다 싶을때 아래의 문제점을 확인해보세요.


1. JDK가 설치가 되지 않았다 -> JDK 설치

2. JDK가 설치가 되었으나 버전이 1.8이다. -> 1.7 JDK설치




gradlew eclipse


저는 작업공간 만드는데에 4분 정도가 걸렸습니다.

이제 eclipse 프로젝트를 생성하면 됩니다.


4. Eclipse 실행



이클립스를 실행하면 이런 창이 뜹니다. 압축을 풀어둔 폴더에 eclipse 폴더를 선택하여 OK를 눌러주시면 됩니다.



이클립스를 실행하였을때 이런 과정이 뜨지 않고 바로 예전 프로젝트가 열린다면 파일(File)->작업공간 변경(Switch Workspace)->기타(Other)를 눌러서 열어주시면 됩니다.


5. 소스 편집



원래 있던 소스를 삭제합니다. 기본적으로 적혀 있는 더미 파일입니다.



그 다음에 패키지를 만들어 줍니다.



보통 패키지 이름은 알아서 정하시면 됩니다. 보통 모더들이 선호하는 방식은 Author.ModName 이니 그 방법을 따르도록 하겠습니다.



클래스를 추가시켜줍니다.



클래스 이름을 지정을 합니다.

저희가 만드는건 Init이벤트를 담당하고 모드의 중요한 필드와 메소드를 만드는 부분입니다.

보통 모더들이 이 클래스를 만들 때 모드의 이름을 적으니 저도 그렇게 쓰도록 하겠습니다.



패키지 탐색기(Pakage Explorer)를 통해서 생성한 class를 연 다음에 이렇게 소스를 짰습니다.

간단하게 FMLInit 이벤트가 발생할때 Hello World를 출력하는 소스를 짰습니다.

아무 에러가 없이 위와 비슷하게 만들어졌다면 성공하신 겁니다.


이제 src/main/resources 에 들어가서 기본정보들을 수정해줍니다.


6. 빌드하기



build.gradle 이라는 파일을 텍스트 편집기를 통해 엽니다.



21번째 줄과 22번째 줄을 수정을 팝니다.

group에는 아까 만들었던 패키지를 적어주시면 되고

archivesBaseName은 아무거나 적어주셔도 상관 없지만 저는 모드 이름을 적었습니다.

그리고 저장을 합니다.



gradlew build


이제 아까의 명령어 창으로 돌아와서 위의 명령어를 입력합니다.

이렇게 하시면 5분 이내외로 빌드가 완성이 됩니다.



빌드가 성공적으로 완료가 되었습니다.



빌드가 성공한 파일은 압축을 푼 위치\build\libs에 위치하고 있습니다.

이제 이걸 복사하여 mods 폴더로 옮겨서 마인크래프트를 실행하시면 됩니다.


7. 완성



자신이 원하는대로 코딩이 되었는가를 확인합니다.


이제 이렇게 하시면 모딩을 하실 환경이 조성된겁니다.

사실 이클립스의 Run버튼을 눌러서 바로 마인크래프트 실행이 가능합니다만 그렇게 하면 매우 불안정하기 때문에 빌드를 해서 직접 확인하시는 것을 추천해드립니다.


다음 강좌에는 여기서 좀 더 살을 붙여서 아이템을 하나 생성해보도록 하겠습니다.

+ Recent posts