fix(installer): fabric 설치를 자바 없이 meta 프로필 JSON 직접 저장으로
근본 해결: fabric-installer(jar) 를 java 로 실행하던 것을 없애고, fabric meta (/v2/versions/loader/<mc>/<loader>/profile/json)에서 버전 프로필 JSON 을 그대로 받아 .minecraft/versions/<id>/<id>.json 에 저장한다. 라이브러리는 프로필의 maven url 로 런처가 실행 시 자동 다운로드. 자바가 없어도 되어 "spawn java.exe ENOENT" 가 원천 제거되고, 바닐라 선행 실행/자바 설치 없이도 fabric 설치가 된다. findJavaExecutable/runJavaProcess/FabricInstallerMeta(자바 실행 경로) 제거. 0.4.25→0.4.26. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -78,7 +78,7 @@
|
||||
2. `.minecraft` 최상위 설정 파일(`options.txt`, `optionsof.txt`, `servers.dat`, `usercache.json`, …) 을 `.mc_custom` 으로 복사. 이미 같은 이름이 있으면 보존.
|
||||
3. 플랫폼 설치:
|
||||
- `vanilla` → 건너뜀.
|
||||
- `fabric` → Adoptium 자동 설치 → 최신 fabric-installer.jar 다운로드 → `java -jar fabric-installer.jar client -mcversion X -loader Y -dir .minecraft -noprofile` 자동 실행. (fabric 버전/라이브러리는 런처 폴더 `.minecraft` 에 바닐라와 함께 설치해야 런처가 찾을 수 있다. `.mc_custom` 에 설치하면 바닐라 버전·라이브러리가 빠져 "Unable to prepare assets for download" 로 실패한다.)
|
||||
- `fabric` → fabric-installer(자바 필요) 를 돌리지 않고, fabric meta 에서 버전 프로필 JSON 을 직접 받아 `.minecraft\versions\fabric-loader-Y-X\fabric-loader-Y-X.json` 으로 저장한다(`https://meta.fabricmc.net/v2/versions/loader/<mc>/<loader>/profile/json`). 자바가 없어도 되므로 "spawn java ENOENT" 나 바닐라 선행 실행이 필요 없다. 라이브러리는 프로필 JSON 에 적힌 maven url 을 보고 런처가 실행 시 자동으로 받는다. (fabric 버전/라이브러리는 런처 폴더 `.minecraft` 에 있어야 런처가 찾으며, `.mc_custom` 에 두면 "Unable to prepare assets for download" 로 실패한다.)
|
||||
- `forge` / `neoforge` → `platform.downloadUrl` 의 설치 jar 다운로드(사용자가 직접 실행하거나 마인크래프트 런처가 인식).
|
||||
4. `modsFolder` 의 모든 `.jar` 와 `resourcepackPath` zip, `mapPath` zip 을 자동 다운로드.
|
||||
5. `.minecraft\{assets,libraries,versions}` 를 `.mc_custom\{assets,libraries,versions}` 로 junction 링크. (없으면 "Unable to prepare assets for download" 오류로 마인크래프트가 실패하기 때문)
|
||||
|
||||
Reference in New Issue
Block a user