HeartPattern
대표칭호 없음
MCVersions
마인크래프트 버전 정보 요청 및 파싱 라이브러리
이 라이브러리는 Mojang 서버에 버전 정보를 요청하며, 요청 결과를 파싱하여 POJO로 반환합니다.
의존성 추가
Gradle(Kotlin DSL)
1 2 3 4 5 6 7 | repositories { maven("https://maven.heartpattern.kr/repository/maven-public/") } dependencies { implementation("kr.heartpattern:MCVersions:1.0.0-SNAPSHOT") } | cs |
Gradle(Groovy DSL)
1 2 3 4 5 6 7 8 9 | repositories { maven { url 'https://maven.heartpattern.kr/repository/maven-public/' } } dependencies { implementation 'kr.heartpattern:MCVersions:1.0.0-SNAPSHOT' } | cs |
Maven
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <repositories> <repository> <id>heartpattern</id> <url>https://maven.heartpattern.kr/repository/maven-public/</url> </repository> </repositories> <dependencies> <dependency> <groupId>kr.heartpattern</groupId> <artifactId>MCVersions</artifactId> <version>1.0.0-SNAPSHOT</version> </dependency> </dependencies> | cs |
사용법
Kotlin
코틀린 메서드는 Coroutine을 사용합니다. Coroutine을 선호하지 않는다면 자바 메서드를 사용하시면 됩니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | import kotlinx.coroutines.runBlocking import kr.heartpattern.mcversions.MCVersions val client = MCVersions() // 새로운 MCVersion Client 생성 runBlocking{ // Coroutine val versions = client.requestVersionSet() // 버전 목록 요청 val latestVersionSummary = versions.versions.first() // 첫번째 버전을 가져옴 val latestVersion = client.requestVersion(latestVersionSummary) // 자세한 정보 요청 println(latestVersion.id) println(latestVersion.releaseTime) } client.close() // Client 닫기 | cs |
Java
자바 메서드는 Java8의 CompletableFuture를 사용합니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | import kr.heartpattern.mcversions.MCVersions; import kr.heartpattern.mcversions.model.Version; import kr.heartpattern.mcversions.model.VersionSet; import kr.heartpattern.mcversions.model.VersionSummary; import java.util.concurrent.CompletableFuture; import java.util.concurrent.ExecutionException; class Scratch { public static void main(String[] args) throws ExecutionException, InterruptedException { MCVersions client = new MCVersions(); CompletableFuture<VersionSet> versionsFuture = client.requestVersionSetAsync(); VersionSet versions = versionsFuture.get(); VersionSummary latestVersionSummary = versions.getVersions().get(0); CompletableFuture<Version> latestVersionFuture = client.requestVersionAsync(latestVersionSummary); Version latestVersion = latestVersionFuture.get(); System.out.println(latestVersion.getId()); System.out.println(latestVersion.getReleaseTime()); client.close(); } } | cs |
링크
Github: https://github.com/HeartPattern/MCVersions
Jenkins: https://jenkins.heartpattern.kr/job/HeartPattern/job/MCVersions/
Maven: https://maven.heartpattern.kr/repository/maven-public/
DDang_
2020.01.31감사합니다
윈초
2020.02.03버전 정보에는 어떤것들이 포함되있나요?
HeartPattern
2020.02.12버전 정보에는 마인크래프트 실행에 필요한 라이브러리의 이름과 다운로드 주소, 마인크래프트 파일의 주소, 버전, 릴리즈 날짜, 명령줄 인수, 메인 클래스, 로거 정보 등이 포함됩니다.
윈초
2020.02.12기ㅣㅁ사합니다
형준hjun
2020.04.04감사합니다