- 저장소 복제
git clone https://github.com/monun/paper-sample.git - 프로젝트 이름 변경 (
settings.gradle.kts의rootProject.name) - 구성 태스크 실행
./gradlew setupModules
최상위 계층 인터페이스
API의 구현, 실제 실행 코드, net.minecraft.server 를 참조하는 코드
하위에 참조할 버전 이름의 프로젝트를 생성 ex) v1.18
PaperMC 와 상호작용할 JavaPlugin 을 포함한 코드
./gradlew devJarmojang mapped bundler jar./gradlew reobfJarreobfusecated bundler jar./gradlew clipJarclip jar
배포용 프로젝트
./gradlew publishToMavenLocal -Pdev로 로컬 저장소에 mojangmapping 버전의 jar 파일을 배포 가능
api:jar태스크를 참조하는 작업 후clean태스크 실행 불가- (gradle daemon이 api.jar 를 잡고 있음)
- SNAPSHOT 버전일 경우
plugin:clipJar태스크를 통한 플러그인이 서버에서 실행되지 않음- SNAPSHOT 버전은 항상 mavenCentral 에서 최신 버전을 확인하는데 실제로 서버에 존재하지 않아서 생기는 문제