모드 커뮤니티

이 게시판에 글을 작성하시려면 인증 개발자 권한이 필요합니다. 언제든지 지원해주세요(바로가기).


API or 라이브러리

MCVersions: 마인크래프트 버전 정보 라이브러리

HeartPattern 2020.01.31 조회 수 89 추천 수 1
마인크래프트 버전 모두 
API 종속성 기타 

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/

 




5개의 댓글

형준hjun
1 일 전

감사합니다

윈트초코
2020.02.03

버전 정보에는 어떤것들이 포함되있나요?

HeartPattern
2020.02.12
@윈트초코

버전 정보에는 마인크래프트 실행에 필요한 라이브러리의 이름과 다운로드 주소, 마인크래프트 파일의 주소, 버전, 릴리즈 날짜, 명령줄 인수, 메인 클래스, 로거 정보 등이 포함됩니다.

윈트초코
2020.02.12
@HeartPattern

기ㅣㅁ사합니다

DDang_
2020.01.31

감사합니다

고급 자료실

인증 개발자 분들이 창작하신 고급 자료들을 만나보실 수 있습니다!

마인크래프트 버전
API 종속성
조회 수 제목 글쓴이
375 한디포 이용 규칙 15 초스터
612 한디포 이용 가이드! 처음 온 분은 읽어둡시다! 15 초스터
8801 한마포 AD 소개 (유료 광고 서비스) 54 프리루트
89 [API or 라이브러리] MCVersions: 마인크래프트 버전 정보 라이브러리 5 HeartPattern
66 [기타] Exhibitionism: 클래스,메서드,필드를 노출시키는 프로그램 2 HeartPattern
65 [유틸] [1.15.2] 간편 버킷 실행기 2 레도
202 [플러그인] TrafficLogger 1.0 / 서버 트래픽을 최적화해봅시다 3 Skywolf46
152 [API or 라이브러리] CommandAnnotation / 명령어 등록을 더 쉽고 편리하게. 3 Skywolf46
169 [기타] MC-Remapper: 마인크래프트 난독화 제거 툴 5 HeartPattern
165 [API or 라이브러리] 쉽게 명령어를 추가하자 - EzFramework 3 KingCjy
106 [유틸] IntegratedMessageUtil / 전버전 호환 메시지/플레이스홀더 관리 유틸 4 Skywolf46
214 [API or 라이브러리] ReflectedNBTWrapper / 전버전 호환 NBT 라이브러리 10 Skywolf46

 

개발자 최신글
https://www.koreaminecraft.net/files/thumbnails/065/536/001/262x150.crop.jpg

기타

마인크래프트모드를만들고싶어하는사람입니다.

Dogulkkun

2020-04-05

0

https://www.koreaminecraft.net/files/thumbnails/219/535/001/262x150.crop.jpg

커맨드 블록

리미트의 한계까지 달려보는 커맨드 강좌 제 2강 - 맵 설정을 해보자! [한.달] 1

리미트

2020-04-05

0