안녕하세요.
이전에 만들었던
'인텔리제이로 마크 플러그인 만들기' , '코틀린으로 마크 플러그인 개발하기'
두 시리즈를 리뉴얼하여
'자바로 마크 Paper 플러그인 만들기'로 돌아왔습니다.
Paper API 란??
기존 Spigot의 문제점들을 해결하여 만든 Bukkit API 베이스 API
Spigot 추세에서 성능적인 문제로 Paper로 넘어갔고
주류가 된 API입니다.
Development Guide | PaperMC Documentation
시작 개발 환경
마인크래프트 버전 : 1.20.2
언어 : 자바 (JDK 17)
Java Archive Downloads - Java SE 17 (oracle.com)
IDE : 인텔리제이 (New UI)
/New UI 적용법/
인텔리제이 Settings -> Appearance & Behavior -> New UI
버전 관리 : Gradle
프로젝트 생성
1. 인텔리제이 플러그인 설치하기
자 첫 시작이니 프로젝트를 만들어봅시다.
먼저 마인크래프트 개발 관련 설정을 한 번에 해주는 인텔리제이의 플러그인을 설치해 봅시다.
인텔리제이 Settings -> Plugins -> MarketPlace -> Minecraft 검색
Minecraft Development 라는 인텔리제이 플러그인을 사용할 겁니다.
설치해 줍시다.
2. 인텔리제이 프로젝트 생성
인텔리제이 New Project 버튼을 누르게 되면
왼쪽 Generators에서 Minecraft를 눌러주면 위와 같은 화면이 나옵니다.
Name 을 PaperEdu로 하였습니다.
개발 환경에서 언급한 대로
Platform Type은 Plugin,
Platform은 Paper,
Minecraft Version은 1.20.2,
Build System은 Gradle,
Group ID는 폴더 경로로
org.blog -> org 폴더 내의 blog 폴더를 뜻한다고 생각하시면 됩니다.
org.blog로 설정하였고
JDK는 17로 해주었습니다.
/만약 JDK 17이 안뜬다면??/
JDK의 경로를 직접 설정해주셔야 합니다.
일반적으로 C:\Program Files\Java 에 있습니다.
Create 버튼을 누르면 프로젝트가 생성됩니다.
코드 작성 해보기
PaperEdu 클래스 전체 코드
public final class PaperEdu extends JavaPlugin {
@Override
public void onEnable() {
// Plugin startup logic
}
@Override
public void onDisable() {
// Plugin shutdown logic
}
}
만들어진 PaperEdu 클래스는 Main 클래스로
서버의 시작 및 종료를 담당한다고 생각하시면 됩니다.
onEnable(), onDisable() 메소드는 각각 시작, 종료 시에 실행됩니다.
public final class PaperEdu extends JavaPlugin {
@Override
public void onEnable() {
// Plugin startup logic
getLogger().info("플러그인 시작 테스트");
}
@Override
public void onDisable() {
// Plugin shutdown logic
getLogger().info("플러그인 종료 테스트");
}
}
로그를 남겨보겠습니다.
빌드 해보기
코드를 작성했으니 빌드 아티팩트(빌드 결과물)를 만들어 보겠습니다.
먼저, 플러그인 아티팩트 경로를 개발 서버의 plugins 폴더로 지정하여
차후에 개발할 때, 귀찮은 작업을 줄이겠습니다.
build.gradle 파일
tasks.jar{
archiveFileName = 'PaperEduPlugin.jar'
destinationDirectory = file('C:\\Users\\User\\Desktop\\game\\minecraft\\1.20.2 paper plugin develop server\\plugins')
}
build.gradle 파일에 위와 같은 코드를 추가합니다.
archiveFileName은 파일명,
destinationDirectory은 결과물 경로를 나타냅니다.
여기서 destinationDirectory를 본인이 사용하는 서버의 폴더 경로로 지정해주세요
이제 빌드해 보겠습니다.
인텔리제이의 오른쪽 상단을 보게 되면 코끼리 비슷한 아이콘이 있습니다.
이를 눌러봅시다.
Tasks -> build -> jar 눌러줍니다.
서버를 실행하여 결과를 확인해 보겠습니다.
만약 한글이 나오지 않는다면??
[인텔리제이로 마크 플러그인 개발하기] 2. 인텔리제이 한글인코딩 (tistory.com)
'마인크래프트 > 플러그인 제작 강좌(자바)' 카테고리의 다른 글
[자바로 마크 Paper 플러그인 만들기]3. 유저 데이터 관리하기(2) - 명령어 만들기 (17) | 2024.01.16 |
---|---|
[자바로 마크 Paper 플러그인 만들기]2. 유저 데이터 관리하기(1) - 이벤트 처리 (6) | 2024.01.01 |
[인텔리제이로 마크 플러그인 개발하기](보충) Gradle로 jar 빌드하기 2 (3) | 2023.06.30 |
[인텔리제이로 마크 플러그인 개발하기](보충)Config Reload 명령어 만들기 (2) | 2023.03.20 |
[인텔리제이로 마크 플러그인 개발하기](보충)Config 분할하기 (0) | 2023.03.07 |
댓글