{"id":21413566,"url":"https://github.com/monun/paper-sample-complex","last_synced_at":"2025-07-14T03:31:19.780Z","repository":{"id":52445674,"uuid":"445544044","full_name":"monun/paper-sample-complex","owner":"monun","description":null,"archived":true,"fork":false,"pushed_at":"2023-08-16T07:11:08.000Z","size":134,"stargazers_count":14,"open_issues_count":0,"forks_count":5,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-27T08:12:36.792Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/monun.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-01-07T14:15:14.000Z","updated_at":"2024-10-07T12:04:58.000Z","dependencies_parsed_at":"2023-02-09T21:15:53.862Z","dependency_job_id":null,"html_url":"https://github.com/monun/paper-sample-complex","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/monun/paper-sample-complex","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/monun%2Fpaper-sample-complex","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/monun%2Fpaper-sample-complex/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/monun%2Fpaper-sample-complex/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/monun%2Fpaper-sample-complex/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/monun","download_url":"https://codeload.github.com/monun/paper-sample-complex/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/monun%2Fpaper-sample-complex/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265237696,"owners_count":23732514,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-22T18:19:02.788Z","updated_at":"2025-07-14T03:31:19.408Z","avatar_url":"https://github.com/monun.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"# PaperMC plugin sample (1.17.1+)\n\n[![Kotlin](https://img.shields.io/badge/java-17-ED8B00.svg?logo=java)](https://www.azul.com/)\n[![Kotlin](https://img.shields.io/badge/kotlin-1.8.22-585DEF.svg?logo=kotlin)](http://kotlinlang.org)\n[![Gradle](https://img.shields.io/badge/gradle-8.2.1-02303A.svg?logo=gradle)](https://gradle.org)\n[![GitHub](https://img.shields.io/github/license/monun/paper-sample-complex)](https://www.gnu.org/licenses/gpl-3.0.html)\n[![Kotlin](https://img.shields.io/badge/youtube-각별-red.svg?logo=youtube)](https://www.youtube.com/channel/UCDrAR1OWC2MD4s0JLetN0MA)\n\n## 프로젝트 구성하기\n\n1. 저장소 복제 `git clone https://github.com/monun/paper-sample.git`\n2. 프로젝트 이름 변경 (`settings.gradle.kts` 의 `rootProject.name`)\n3. 구성 태스크 실행 `./gradlew setupModules`\n\n---\n\n#### API\n\n최상위 계층 인터페이스\n\n---\n\n#### CORE\n\nAPI의 구현, 실제 실행 코드, `net.minecraft.server` 를 참조하는 코드\n\n하위에 참조할 버전 이름의 프로젝트를 생성 `ex) v1.18`\n\n---\n\n#### PLUGIN\n\nPaperMC 와 상호작용할 JavaPlugin 을 포함한 코드\n\n* `./gradlew devJar` mojang mapped bundler jar\n* `./gradlew reobfJar` reobfusecated bundler jar\n* `./gradlew clipJar` clip jar\n\n---\n\n#### PUBLISH\n\n배포용 프로젝트\n\n* `./gradlew publishToMavenLocal -Pdev` 로 로컬 저장소에 mojangmapping 버전의 jar 파일을 배포 가능\n\n---\n\n#### 참고\n\n* `api:jar` 태스크를 참조하는 작업 후 `clean` 태스크 실행 불가\n    * (gradle daemon이 api.jar 를 잡고 있음)\n* SNAPSHOT 버전일 경우 `plugin:clipJar` 태스크를 통한 플러그인이 서버에서 실행되지 않음\n    * SNAPSHOT 버전은 항상 mavenCentral 에서 최신 버전을 확인하는데 실제로 서버에 존재하지 않아서 생기는 문제 ","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmonun%2Fpaper-sample-complex","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmonun%2Fpaper-sample-complex","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmonun%2Fpaper-sample-complex/lists"}