빌드 시스템

Gradle 이나 Maven 같은 빌드 시스템은 프로젝트의 빌드 과정을 관리합니다. IDE와는 독립된 도구로, SpongeAPI나 다른 플러그인에 대한 의존성을 관리하고 다른 사람이 쉽게 당신의 플러그인을 소스에서 빌드할 수 있도록 합니다.

주석

SpongeAPI를 사용한 플러그인 개발에 빌드 시스템의 사용은 필수**가 아닙니다**만, 사용하는 것이 권장됩니다. `Creating a plugin without a build system`_에서의 짧은 설명을 제외한 아래의 지침서는 당신이 프로젝트의 의존성을 관리해 줄 빌드 시스템을 사용한다고 가정합니다.

기본적으로, 당신은 자바 프로젝트의 빌드 시스템 표준으로 *Maven dependency*를 지원하는 어떠한 빌드 시스템을 사용해도 좋습니다. 다음 지침은 빌드 시스템으로 가장 많이 사용되는 Gradle_과 Maven_의 사용에 초점을 맞출 것입니다. 만약 당신이 무엇을 사용할 지 모르겠다면, Gradle_이 Sponge 프로젝트에 사용되고 있고 Sponge 플러그인에게 최상의 연계를 제공하기 때문에 저희들은 Gradle_의 사용을 추천드립니다.

Gradle

Gradle_은 프로젝트 설정에 사용되는 Groovy 기반 스크립트를 사용합니다. Gradle 프로젝트는 일반적으로 최상위 디렉토리에 있는 build.gradle 파일이 Gradle_에게 프로젝트를 어떤 식으로 빌드할지 지시합니다.

참고

Gradle_의 개념에 대한 기본 안내와 설치 방법은 `Gradle User Guide`_를 참조하세요. 만약 당신이 간단한 자바 프로젝트에 Gradle_을 어떻게 사용하는지에만 관심이 있다면, `Gradle Java Quickstart`_를 먼저 확인하세요.

workspace/index`에 설명된 대로 작업공간을 설정한 다음 :doc:`project/gradle 지침서를 따르세요.

Maven

Maven은 Project Object Model`_(또는 *POM*)이라고 하는 XML기반의 설정을 프로젝트를 설정하기 위해 사용합니다. Maven_ 프로젝트는 어떻게 프로젝트를 빌드할 지를 지시하기 위해 프로젝트의 최상단 폴더에 일반적으로 ``pom.xml` 파일을 포함합니다.

참고

Maven_의 설치 및 사용되는 개념에 대한 설명은 `Maven Users Centre`_를 참고하세요. 만약, Maven_을 간단한 자바 프로젝트에 어떻게 사용하는지에만 관심이 있다면, `Maven in 5 Minutes`_가 시작하기 좋을 것입니다.

workspace/index`에 설명되어 있는대로 작업 공간을 설정하세요. 그리고 :doc:`project/maven 를 따라하세요.

빌드 시스템 없이 플러그인 개발하기

당신의 IDE에 포함된 기능만을 사용하면, 빌드 시스템 없이도 Sponge 플러그인을 개발할 수 있습니다.

경고

저희는 SpongeAPI를 빌드 시스템 없이 사용하는 것을 권장하지 않습니다. 장기적으로 볼 때 빌드 시스템을 사용하면 당신, 그리고 당신의 프로젝트에 기여하기를 원하는 사람들의 개발 진행이 간소화될 것입니다. 빌드 시스템 없는 플러그인 개발은 Sponge 팀으로부터 지속적인 지원을 받을 수 없습니다.

빌드 시스템 없이 플러그인을 개발하기 위해서는 SpongeAPI Download Page 에서 SpongeAPI 의존성을 직접 다운로드 해야합니다. 빌드 시스템 없이 개발하기 위해서, 우리는 일반적으로는 빌드시스템에서 자동으로 다운로드 하는 모든 의존성을 포함한 ``shaded``된 artifact를 제공합니다.

``shaded``된 artifact를 다운로드 하고, 프로젝트의 IDE에 추가했다면, 당신은 플러그인 개발을 시작할 수 있습니다. 프로젝트의 식별자를 고르기 위해서 :doc:`plugin-identifier`로 가세요. 그리고 :doc:`plugin-class`를 따라하세요.