mc paper 1.20.4

你这个现象是正常的,因为第一次启动 Paper 服务器时,它会先下载对应的 原版 Mojang 服务器核心(mojang_1.20.4.jar),Paper 会用它来做一些数据同步和兼容处理。

流程是这样的:
1. 你运行 paper-1.20.4-499.jar。
2. Paper 检测本地没有 mojang_1.20.4.jar。
3. 它会从 Mojang 官方服务器下载该文件(所以第一次会比较慢)。
4. 下载完成后继续启动,生成 eula.txt 和配置文件。
5. 你需要编辑 eula.txt,把 eula=false 改为 eula=true。
6. 再次运行启动命令,服务器就会正式启动。

启动命令(Java 17 用这个没问题):

java -Xmx2G -Xms1G -jar paper-1.20.4-499.jar nogui

如果你是在 树莓派 4B 上跑 Paper + Java 17,我建议你:
• 用 screen 或 tmux 来后台运行服务器。
• 至少给它分配 2G 内存(-Xmx2G),树莓派 4B 建议系统装 64 位版 Raspberry Pi OS。
• 第一次启动后修改 server.properties 调整端口、在线人数等。

我可以帮你写一个 一键启动脚本,让你树莓派开机自动跑 Paper 服务器,你要吗?

你是想在树莓派上**离线启动 Paper 服务器(不联网下载 mojang_xxx.jar)**对吧?
那就要提前在联网的电脑上准备好所有依赖文件,再拷到树莓派上。

我帮你整理一个完全离线启动 Paper 的步骤:

  1. 在联网电脑上准备环境
    1. 准备 Java 17
      • 电脑安装 Java 17(推荐 Temurin 17 JDK)。
      • 用 java -version 确认版本。
    2. 下载 Paper 版本文件
      比如:

paper-1.20.4-4

Command: D:\JAVA\bin\java.exe -Xmx9859m -Dfile.encoding=GB18030 -Dsun.stdout.encoding=GB18030 -Dsun.stderr.encoding=GB18030 -Djava.rmi.server.useCodebaseOnly=true -Dcom.sun.jndi.rmi.object.trustURLCodebase=false -Dcom.sun.jndi.cosnaming.object.trustURLCodebase=false -Dlog4j2.formatMsgNoLookups=true -Dlog4j.configurationFile=D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\log4j2.xml -Dminecraft.client.jar=D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\机械动力-1.20.1-[Forge].jar -Djava.net.useSystemProxiestrue -XX:+UnlockExperimentalVMOptions -XX:+UnlockDiagnosticVMOptions -XX:+UseG1GC -XX:G1MixedGCCountTarget=5 -XX:G1NewSizePercent=20 -XX:G1ReservePercent=20 -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=32m -XX:-OmitStackTraceInFastThrow -XX:-DontCompileHugeMethods -XX:MaxNodeLimit=240000 -XX:NodeLimitFudgeFactor=8000 -XX:TieredCompileTaskTimeout=10000 -XX:ReservedCodeCacheSize=400M -XX:NonNMethodCodeHeapSize=12M -XX:ProfiledCodeHeapSize=194M -XX:NmethodSweepActivity=1 -Dfml.ignoreInvalidMinecraftCertificates=true -Dfml.ignorePatchDiscrepancies=true -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Djava.library.path=D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\natives-windows-x86_64 -Djna.tmpdir=D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\natives-windows-x86_64 -Dorg.lwjgl.system.SharedLibraryExtractPath=D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\natives-windows-x86_64 -Dio.netty.native.workdir=D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\natives-windows-x86_64 -Dminecraft.launcher.brand=HMCL -Dminecraft.launcher.version=3.7.5 -cp D:\MC\.minecraft\libraries\cpw\mods\securejarhandler\2.1.10\securejarhandler-2.1.10.jar;D:\MC\.minecraft\libraries\org\ow2\asm\asm\9.5\asm-9.5.jar;D:\MC\.minecraft\libraries\org\ow2\asm\asm-commons\9.5\asm-commons-9.5.jar;D:\MC\.minecraft\libraries\org\ow2\asm\asm-tree\9.5\asm-tree-9.5.jar;D:\MC\.minecraft\libraries\org\ow2\asm\asm-util\9.5\asm-util-9.5.jar;D:\MC\.minecraft\libraries\org\ow2\asm\asm-analysis\9.5\asm-analysis-9.5.jar;D:\MC\.minecraft\libraries\net\minecraftforge\accesstransformers\8.0.4\accesstransformers-8.0.4.jar;D:\MC\.minecraft\libraries\org\antlr\antlr4-runtime\4.9.1\antlr4-runtime-4.9.1.jar;D:\MC\.minecraft\libraries\net\minecraftforge\eventbus\6.0.5\eventbus-6.0.5.jar;D:\MC\.minecraft\libraries\net\minecraftforge\forgespi\7.0.1\forgespi-7.0.1.jar;D:\MC\.minecraft\libraries\net\minecraftforge\coremods\5.0.1\coremods-5.0.1.jar;D:\MC\.minecraft\libraries\cpw\mods\modlauncher\10.0.9\modlauncher-10.0.9.jar;D:\MC\.minecraft\libraries\net\minecraftforge\unsafe\0.2.0\unsafe-0.2.0.jar;D:\MC\.minecraft\libraries\net\minecraftforge\mergetool\1.1.5\mergetool-1.1.5-api.jar;D:\MC\.minecraft\libraries\com\electronwill\night-config\core\3.6.4\core-3.6.4.jar;D:\MC\.minecraft\libraries\com\electronwill\night-config\toml\3.6.4\toml-3.6.4.jar;D:\MC\.minecraft\libraries\org\apache\maven\maven-artifact\3.8.5\maven-artifact-3.8.5.jar;D:\MC\.minecraft\libraries\net\jodah\typetools\0.6.3\typetools-0.6.3.jar;D:\MC\.minecraft\libraries\net\minecrell\terminalconsoleappender\1.2.0\terminalconsoleappender-1.2.0.jar;D:\MC\.minecraft\libraries\org\jline\jline-reader\3.12.1\jline-reader-3.12.1.jar;D:\MC\.minecraft\libraries\org\jline\jline-terminal\3.12.1\jline-terminal-3.12.1.jar;D:\MC\.minecraft\libraries\org\spongepowered\mixin\0.8.5\mixin-0.8.5.jar;D:\MC\.minecraft\libraries\org\openjdk\nashorn\nashorn-core\15.3\nashorn-core-15.3.jar;D:\MC\.minecraft\libraries\net\minecraftforge\JarJarSelector\0.3.19\JarJarSelector-0.3.19.jar;D:\MC\.minecraft\libraries\net\minecraftforge\JarJarMetadata\0.3.19\JarJarMetadata-0.3.19.jar;D:\MC\.minecraft\libraries\cpw\mods\bootstraplauncher\1.1.2\bootstraplauncher-1.1.2.jar;D:\MC\.minecraft\libraries\net\minecraftforge\JarJarFileSystems\0.3.19\JarJarFileSystems-0.3.19.jar;D:\MC\.minecraft\libraries\net\minecraftforge\fmlloader\1.20.1-47.2.19\fmlloader-1.20.1-47.2.19.jar;D:\MC\.minecraft\libraries\net\minecraftforge\fmlearlydisplay\1.20.1-47.2.19\fmlearlydisplay-1.20.1-47.2.19.jar;D:\MC\.minecraft\libraries\com\github\oshi\oshi-core\6.2.2\oshi-core-6.2.2.jar;D:\MC\.minecraft\libraries\com\google\code\gson\gson\2.10\gson-2.10.jar;D:\MC\.minecraft\libraries\com\google\guava\failureaccess\1.0.1\failureaccess-1.0.1.jar;D:\MC\.minecraft\libraries\com\google\guava\guava\31.1-jre\guava-31.1-jre.jar;D:\MC\.minecraft\libraries\com\ibm\icu\icu4j\71.1\icu4j-71.1.jar;D:\MC\.minecraft\libraries\com\mojang\authlib\4.0.43\authlib-4.0.43.jar;D:\MC\.minecraft\libraries\com\mojang\blocklist\1.0.10\blocklist-1.0.10.jar;D:\MC\.minecraft\libraries\com\mojang\brigadier\1.1.8\brigadier-1.1.8.jar;D:\MC\.minecraft\libraries\com\mojang\datafixerupper\6.0.8\datafixerupper-6.0.8.jar;D:\MC\.minecraft\libraries\com\mojang\logging\1.1.1\logging-1.1.1.jar;D:\MC\.minecraft\libraries\com\mojang\patchy\2.2.10\patchy-2.2.10.jar;D:\MC\.minecraft\libraries\com\mojang\text2speech\1.17.9\text2speech-1.17.9.jar;D:\MC\.minecraft\libraries\commons-codec\commons-codec\1.15\commons-codec-1.15.jar;D:\MC\.minecraft\libraries\commons-io\commons-io\2.11.0\commons-io-2.11.0.jar;D:\MC\.minecraft\libraries\commons-logging\commons-logging\1.2\commons-logging-1.2.jar;D:\MC\.minecraft\libraries\io\netty\netty-buffer\4.1.82.Final\netty-buffer-4.1.82.Final.jar;D:\MC\.minecraft\libraries\io\netty\netty-codec\4.1.82.Final\netty-codec-4.1.82.Final.jar;D:\MC\.minecraft\libraries\io\netty\netty-common\4.1.82.Final\netty-common-4.1.82.Final.jar;D:\MC\.minecraft\libraries\io\netty\netty-handler\4.1.82.Final\netty-handler-4.1.82.Final.jar;D:\MC\.minecraft\libraries\io\netty\netty-resolver\4.1.82.Final\netty-resolver-4.1.82.Final.jar;D:\MC\.minecraft\libraries\io\netty\netty-transport-classes-epoll\4.1.82.Final\netty-transport-classes-epoll-4.1.82.Final.jar;D:\MC\.minecraft\libraries\io\netty\netty-transport-native-unix-common\4.1.82.Final\netty-transport-native-unix-common-4.1.82.Final.jar;D:\MC\.minecraft\libraries\io\netty\netty-transport\4.1.82.Final\netty-transport-4.1.82.Final.jar;D:\MC\.minecraft\libraries\it\unimi\dsi\fastutil\8.5.9\fastutil-8.5.9.jar;D:\MC\.minecraft\libraries\net\java\dev\jna\jna-platform\5.12.1\jna-platform-5.12.1.jar;D:\MC\.minecraft\libraries\net\java\dev\jna\jna\5.12.1\jna-5.12.1.jar;D:\MC\.minecraft\libraries\net\sf\jopt-simple\jopt-simple\5.0.4\jopt-simple-5.0.4.jar;D:\MC\.minecraft\libraries\org\apache\commons\commons-compress\1.21\commons-compress-1.21.jar;D:\MC\.minecraft\libraries\org\apache\commons\commons-lang3\3.12.0\commons-lang3-3.12.0.jar;D:\MC\.minecraft\libraries\org\apache\httpcomponents\httpclient\4.5.13\httpclient-4.5.13.jar;D:\MC\.minecraft\libraries\org\apache\httpcomponents\httpcore\4.4.15\httpcore-4.4.15.jar;D:\MC\.minecraft\libraries\org\apache\logging\log4j\log4j-api\2.19.0\log4j-api-2.19.0.jar;D:\MC\.minecraft\libraries\org\apache\logging\log4j\log4j-core\2.19.0\log4j-core-2.19.0.jar;D:\MC\.minecraft\libraries\org\apache\logging\log4j\log4j-slf4j2-impl\2.19.0\log4j-slf4j2-impl-2.19.0.jar;D:\MC\.minecraft\libraries\org\joml\joml\1.10.5\joml-1.10.5.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl-glfw\3.3.1\lwjgl-glfw-3.3.1.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl-glfw\3.3.1\lwjgl-glfw-3.3.1-natives-windows.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl-glfw\3.3.1\lwjgl-glfw-3.3.1-natives-windows-arm64.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl-glfw\3.3.1\lwjgl-glfw-3.3.1-natives-windows-x86.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl-jemalloc\3.3.1\lwjgl-jemalloc-3.3.1.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl-jemalloc\3.3.1\lwjgl-jemalloc-3.3.1-natives-windows.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl-jemalloc\3.3.1\lwjgl-jemalloc-3.3.1-natives-windows-arm64.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl-jemalloc\3.3.1\lwjgl-jemalloc-3.3.1-natives-windows-x86.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl-openal\3.3.1\lwjgl-openal-3.3.1.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl-openal\3.3.1\lwjgl-openal-3.3.1-natives-windows.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl-openal\3.3.1\lwjgl-openal-3.3.1-natives-windows-arm64.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl-openal\3.3.1\lwjgl-openal-3.3.1-natives-windows-x86.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl-opengl\3.3.1\lwjgl-opengl-3.3.1.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl-opengl\3.3.1\lwjgl-opengl-3.3.1-natives-windows.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl-opengl\3.3.1\lwjgl-opengl-3.3.1-natives-windows-arm64.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl-opengl\3.3.1\lwjgl-opengl-3.3.1-natives-windows-x86.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl-stb\3.3.1\lwjgl-stb-3.3.1.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl-stb\3.3.1\lwjgl-stb-3.3.1-natives-windows.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl-stb\3.3.1\lwjgl-stb-3.3.1-natives-windows-arm64.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl-stb\3.3.1\lwjgl-stb-3.3.1-natives-windows-x86.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl-tinyfd\3.3.1\lwjgl-tinyfd-3.3.1.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl-tinyfd\3.3.1\lwjgl-tinyfd-3.3.1-natives-windows.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl-tinyfd\3.3.1\lwjgl-tinyfd-3.3.1-natives-windows-arm64.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl-tinyfd\3.3.1\lwjgl-tinyfd-3.3.1-natives-windows-x86.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl\3.3.1\lwjgl-3.3.1.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl\3.3.1\lwjgl-3.3.1-natives-windows.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl\3.3.1\lwjgl-3.3.1-natives-windows-arm64.jar;D:\MC\.minecraft\libraries\org\lwjgl\lwjgl\3.3.1\lwjgl-3.3.1-natives-windows-x86.jar;D:\MC\.minecraft\libraries\org\slf4j\slf4j-api\2.0.1\slf4j-api-2.0.1.jar;D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\机械动力-1.20.1-[Forge].jar -Djava.net.preferIPv6Addresses=system -DignoreList=bootstraplauncher,securejarhandler,asm-commons,asm-util,asm-analysis,asm-tree,asm,JarJarFileSystems,client-extra,fmlcore,javafmllanguage,lowcodelanguage,mclanguage,forge-,机械动力-1.20.1-[Forge].jar,机械动力-1.20.1-[Forge].jar -DmergeModules=jna-5.10.0.jar,jna-platform-5.10.0.jar -DlibraryDirectory=D:\MC\.minecraft\libraries -p D:\MC\.minecraft\libraries/cpw/mods/bootstraplauncher/1.1.2/bootstraplauncher-1.1.2.jar;D:\MC\.minecraft\libraries/cpw/mods/securejarhandler/2.1.10/securejarhandler-2.1.10.jar;D:\MC\.minecraft\libraries/org/ow2/asm/asm-commons/9.5/asm-commons-9.5.jar;D:\MC\.minecraft\libraries/org/ow2/asm/asm-util/9.5/asm-util-9.5.jar;D:\MC\.minecraft\libraries/org/ow2/asm/asm-analysis/9.5/asm-analysis-9.5.jar;D:\MC\.minecraft\libraries/org/ow2/asm/asm-tree/9.5/asm-tree-9.5.jar;D:\MC\.minecraft\libraries/org/ow2/asm/asm/9.5/asm-9.5.jar;D:\MC\.minecraft\libraries/net/minecraftforge/JarJarFileSystems/0.3.19/JarJarFileSystems-0.3.19.jar --add-modules ALL-MODULE-PATH --add-opens java.base/java.util.jar=cpw.mods.securejarhandler --add-opens java.base/java.lang.invoke=cpw.mods.securejarhandler --add-exports java.base/sun.security.util=cpw.mods.securejarhandler --add-exports jdk.naming.dns/com.sun.jndi.dns=java.naming cpw.mods.bootstraplauncher.BootstrapLauncher --username uxhf --version 机械动力-1.20.1-[Forge] --gameDir D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge] --assetsDir D:\MC\.minecraft\assets --assetIndex 5 --uuid 374b09c01e8b4b538520e08bde88d3e2 --accessToken <access token> --clientId ${clientid} --xuid ${auth_xuid} --userType msa --versionType "HMCL 3.7.5" --width 854 --height 480 --launchTarget forgeclient --fml.forgeVersion 47.2.19 --fml.mcVersion 1.20.1 --fml.forgeGroup net.minecraftforge --fml.mcpVersion 20230612.114412 [14:07:40] [main/INFO]: ModLauncher running: args [--username, uxhf, --version, 机械动力-1.20.1-[Forge], --gameDir, D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge], --assetsDir, D:\MC\.minecraft\assets, --assetIndex, 5, --uuid, 374b09c01e8b4b538520e08bde88d3e2, --accessToken, ❄❄❄❄❄❄❄❄, --clientId, ${clientid}, --xuid, ${auth_xuid}, --userType, msa, --versionType, HMCL 3.7.5, --width, 854, --height, 480, --launchTarget, forgeclient, --fml.forgeVersion, 47.2.19, --fml.mcVersion, 1.20.1, --fml.forgeGroup, net.minecraftforge, --fml.mcpVersion, 20230612.114412] [14:07:40] [main/INFO]: ModLauncher 10.0.9+10.0.9+main.dcd20f30 starting: java version 17.0.10 by Oracle Corporation; OS Windows 11 arch amd64 version 10.0 [14:07:43] [main/INFO]: Loading ImmediateWindowProvider fmlearlywindow [14:07:44] [main/INFO]: Trying GL version 4.6 [14:07:44] [main/INFO]: Requested GL version 4.6 got version 4.6 [14:07:44] [main/INFO]: SpongePowered MIXIN Subsystem Version=0.8.5 Source=union:/D:/MC/.minecraft/libraries/org/spongepowered/mixin/0.8.5/mixin-0.8.5.jar%23100!/ Service=ModLauncher Env=CLIENT [14:07:44] [pool-2-thread-1/INFO]: GL info: NVIDIA GeForce RTX 4060 Laptop GPU/PCIe/SSE2 GL version 4.6.0 NVIDIA 566.36, NVIDIA Corporation [14:07:44] [main/INFO]: Found mod file appleskin-forge-mc1.20.1-2.5.1.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file architectury-9.1.10-forge.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file badpackets-forge-0.4.1.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file BetterAdvancements-1.20.1-0.3.2.162.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file betterfpsdist-1.20.1-4.1.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file BetterTitleScreen-1.20-1.13.2.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file BoccHUD-0.1.1-mc1.20.1.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file chat_heads-0.10.30-forge-1.20.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file cloth-config-11.0.99-forge.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file ContingameIME-1.0.6-1.20.1-forge.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file Controlling-forge-1.20.1-12.0.2.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file copycats-3.0.2+mc.1.20.1-forge.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file create-1.20.1-6.0.8.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file create_connected-1.1.8-mc1.20.1-all.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file create_jetpack-forge-4.4.5.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file create_power_loader-2.0.3-mc1.20.1.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file createaddition-1.20.1-1.3.1.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file createbigcannons-5.9.1+mc.1.20.1-forge.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file createcontraptionterminals-1.20-1.2.0.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file createdieselgenerators-1.20.1-1.3.5.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file createendertransmission-2.1.0-1.20.1.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file createoreexcavation-1.20-1.6.5.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file CreativeCore_FORGE_v2.11.18_mc1.20.1.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file cupboard-1.20.1-2.2.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file curtain-mc1.20.1-1.3.2.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file CustomSkinLoader_ForgeActive-15.0-SNAPSHOT-10.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file CustomWindowTitle-Forge-1.20+v1.2.0.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file Durability101-forge-1.20-0.0.4.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file dynamiccrosshair-7.4.2+1.20-forge.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file entityculling-forge-1.6.2-mc1.20.1.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file Fastload-Reforged-mc1.20.1-3.4.0.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file ferritecore-6.0.0-forge.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file FpsReducer2-forge-1.20-2.5.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file gamemenumodoption-mc1.20.1-2.2.1.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file InventoryProfilesNext-forge-1.20-1.10.4.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file ItemPhysicLite_FORGE_v1.6.1_mc1.20.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file Jade-1.20.1-forge-11.7.1.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file jei-1.20.1-forge-15.2.0.27.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file kotlinforforge-4.3.0-all.jar of type LIBRARY with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file libIPN-forge-1.20-3.0.2.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file MaFgLib-0.1.3-mc1.20.1.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file mcwifipnp-1.6.6-1.20.1-forge.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file modernfix-forge-5.11.1+mc1.20.1.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file MouseTweaks-forge-mc1.20-2.25.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file notenoughanimations-forge-1.7.0-mc1.20.1.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file optcheck-1.19-1.5.0-forge.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file ritchiesprojectilelib-2.1.0+mc.1.20.1-forge.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file Rrls-1.20.1-3.1.0-forge.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file screenshot_viewer-1.2.1-forge-mc1.20.1.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file Searchables-forge-1.20.1-1.0.2.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file shulkerboxtooltip-forge-4.0.4+1.20.1.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file sound-physics-remastered-forge-1.20.1-1.3.1.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file Steam_Rails-1.6.7+forge-mc1.20.1.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file toms_storage-1.20-1.7.1.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file Tweakerge-0.1.1-mc1.20.1.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file Xaeros_Minimap_23.9.3_Forge_1.20.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file XaerosWorldMap_1.37.2_Forge_1.20.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file xplusworldloadopti-0.1.0-forge-mc1.20.1.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/INFO]: Found mod file YeetusExperimentus-Forge-2.3.1-build.6+mc1.20.1.jar of type MOD with provider {mods folder locator at D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge]\mods} [14:07:44] [main/WARN]: Mod file D:\MC\.minecraft\libraries\net\minecraftforge\fmlcore\1.20.1-47.2.19\fmlcore-1.20.1-47.2.19.jar is missing mods.toml file [14:07:44] [main/WARN]: Mod file D:\MC\.minecraft\libraries\net\minecraftforge\javafmllanguage\1.20.1-47.2.19\javafmllanguage-1.20.1-47.2.19.jar is missing mods.toml file [14:07:44] [main/WARN]: Mod file D:\MC\.minecraft\libraries\net\minecraftforge\lowcodelanguage\1.20.1-47.2.19\lowcodelanguage-1.20.1-47.2.19.jar is missing mods.toml file [14:07:44] [main/WARN]: Mod file D:\MC\.minecraft\libraries\net\minecraftforge\mclanguage\1.20.1-47.2.19\mclanguage-1.20.1-47.2.19.jar is missing mods.toml file [14:07:44] [main/INFO]: Found mod file fmlcore-1.20.1-47.2.19.jar of type LIBRARY with provider net.minecraftforge.fml.loading.moddiscovery.MinecraftLocator@4248ed58 [14:07:44] [main/INFO]: Found mod file javafmllanguage-1.20.1-47.2.19.jar of type LANGPROVIDER with provider net.minecraftforge.fml.loading.moddiscovery.MinecraftLocator@4248ed58 [14:07:44] [main/INFO]: Found mod file lowcodelanguage-1.20.1-47.2.19.jar of type LANGPROVIDER with provider net.minecraftforge.fml.loading.moddiscovery.MinecraftLocator@4248ed58 [14:07:44] [main/INFO]: Found mod file mclanguage-1.20.1-47.2.19.jar of type LANGPROVIDER with provider net.minecraftforge.fml.loading.moddiscovery.MinecraftLocator@4248ed58 [14:07:44] [main/INFO]: Found mod file client-1.20.1-20230612.114412-srg.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.MinecraftLocator@4248ed58 [14:07:44] [main/INFO]: Found mod file forge-1.20.1-47.2.19-universal.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.MinecraftLocator@4248ed58 [14:07:45] [main/WARN]: Attempted to select two dependency jars from JarJar which have the same identification: Mod File: and Mod File: . Using Mod File: [14:07:45] [main/WARN]: Attempted to select two dependency jars from JarJar which have the same identification: Mod File: and Mod File: . Using Mod File: [14:07:45] [main/INFO]: Found 10 dependencies adding them to mods collection [14:07:45] [main/INFO]: Found mod file flightlib-forge-2.2.1.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@314ed053 [14:07:45] [main/INFO]: Found mod file yaclx-1.12+1.20.2-forge.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@314ed053 [14:07:45] [main/INFO]: Found mod file kfflang-4.3.0.jar of type LANGPROVIDER with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@314ed053 [14:07:45] [main/INFO]: Found mod file mixinextras-forge-0.2.0-beta.8.jar of type GAMELIBRARY with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@314ed053 [14:07:45] [main/INFO]: Found mod file kffmod-4.3.0.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@314ed053 [14:07:45] [main/INFO]: Found mod file flywheel-forge-1.20.1-1.0.5.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@314ed053 [14:07:45] [main/INFO]: Found mod file kfflib-4.3.0.jar of type GAMELIBRARY with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@314ed053 [14:07:45] [main/INFO]: Found mod file Registrate-MC1.20-1.3.3.jar of type GAMELIBRARY with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@314ed053 [14:07:45] [main/INFO]: Found mod file Ponder-Forge-1.20.1-1.0.91.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@314ed053 [14:07:45] [main/INFO]: Found mod file MixinExtras-0.4.1.jar of type GAMELIBRARY with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@314ed053 [14:07:45] [main/ERROR]: Unsupported installed optional dependencies: Mod ID: 'jei', Requested by: 'create', Expected range: '[15.19.0,)', Actual version: '15.2.0.27' [14:07:46] [main/INFO]: Compatibility level set to JAVA_17 [14:07:46] [main/INFO]: Successfully loaded Mixin Connector [com.sonicether.soundphysics.MixinConnector] [14:07:46] [main/INFO]: Launching target 'forgeclient' with arguments [--version, 机械动力-1.20.1-[Forge], --gameDir, D:\MC\.minecraft\versions\机械动力-1.20.1-[Forge], --assetsDir, D:\MC\.minecraft\assets, --uuid, 374b09c01e8b4b538520e08bde88d3e2, --username, uxhf, --assetIndex, 5, --accessToken, ❄❄❄❄❄❄❄❄, --clientId, ${clientid}, --xuid, ${auth_xuid}, --userType, msa, --versionType, HMCL 3.7.5, --width, 854, --height, 480] [14:07:46] [main/INFO]: Loaded configuration file for ModernFix 5.11.1+mc1.20.1: 72 options available, 10 override(s) found [14:07:46] [main/WARN]: Option 'mixin.perf.deduplicate_wall_shapes' overriden (by load error) to 'false' [14:07:46] [main/WARN]: Option 'mixin.bugfix.paper_chunk_patches' overriden (by load error) to 'false' [14:07:46] [main/WARN]: Option 'mixin.perf.cache_strongholds' overriden (by load error) to 'false' [14:07:46] [main/WARN]: Option 'mixin.perf.faster_texture_stitching' overriden (by load error) to 'false' [14:07:46] [main/WARN]: Option 'mixin.bugfix.buffer_builder_leak' overriden (by load error) to 'false' [14:07:46] [main/WARN]: Option 'mixin.perf.nbt_memory_usage' overriden (by load error) to 'false' [14:07:46] [main/WARN]: Option 'mixin.bugfix.chunk_deadlock' overriden (by load error) to 'false' [14:07:46] [main/WARN]: Option 'mixin.perf.thread_priorities' overriden (by load error) to 'false' [14:07:46] [main/WARN]: Option 'mixin.launch.class_search_cache' overriden (by load error) to 'false' [14:07:46] [main/WARN]: Option 'mixin.perf.datapack_reload_exceptions' overriden (by load error) to 'false' [14:07:46] [main/INFO]: Applying Nashorn fix [14:07:46] [main/WARN]: Applying ATs from 24 mods despite being in errored state, this might cause a crash! [14:07:46] [main/INFO]: Applied Forge config corruption patch [14:07:47] [main/INFO]: OptiFine was NOT detected. [14:07:47] [main/INFO]: OptiFabric was NOT detected. [14:07:47] [main/WARN]: Reference map 'Rrls-forge-refmap.json' for rrls.mixins.json could not be read. If this is a development environment you can ignore this message [14:07:47] [main/WARN]: Error loading class: xfacthd/framedblocks/common/blockentity/doubled/FramedAdjustableDoubleBlockEntity (java.lang.ClassNotFoundException: xfacthd.framedblocks.common.blockentity.doubled.FramedAdjustableDoubleBlockEntity) [14:07:47] [main/WARN]: @Mixin target xfacthd.framedblocks.common.blockentity.doubled.FramedAdjustableDoubleBlockEntity was not found createbigcannons.mixins.json:compat.FramedAdjustableDoubleBlockEntityAccessor Exception in thread "main" java.lang.RuntimeException: java.lang.NoClassDefFoundError: com/simibubi/create/foundation/utility/Lang at MC-BOOTSTRAP/cpw.mods.modlauncher@10.0.9/cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:32) at MC-BOOTSTRAP/cpw.mods.modlauncher@10.0.9/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) at MC-BOOTSTRAP/cpw.mods.modlauncher@10.0.9/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) at MC-BOOTSTRAP/cpw.mods.modlauncher@10.0.9/cpw.mods.modlauncher.Launcher.run(Launcher.java:108) at MC-BOOTSTRAP/cpw.mods.modlauncher@10.0.9/cpw.mods.modlauncher.Launcher.main(Launcher.java:78) at MC-BOOTSTRAP/cpw.mods.modlauncher@10.0.9/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) at MC-BOOTSTRAP/cpw.mods.modlauncher@10.0.9/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) at cpw.mods.bootstraplauncher@1.1.2/cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:141) Caused by: java.lang.NoClassDefFoundError: com/simibubi/create/foundation/utility/Lang at TRANSFORMER/railways@1.6.7+forge-mc1.20.1/com.railwayteam.railways.compat.Mods.asId(Mods.java:69) at TRANSFORMER/railways@1.6.7+forge-mc1.20.1/com.railwayteam.railways.compat.Mods.<init>(Mods.java:61) at TRANSFORMER/railways@1.6.7+forge-mc1.20.1/com.railwayteam.railways.compat.Mods.<init>(Mods.java:56) at TRANSFORMER/railways@1.6.7+forge-mc1.20.1/com.railwayteam.railways.compat.Mods.<clinit>(Mods.java:32) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at java.base/java.lang.Class.getEnumConstantsShared(Class.java:3837) at java.base/java.lang.Class.enumConstantDirectory(Class.java:3859) at java.base/java.lang.Enum.valueOf(Enum.java:267) at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.util.Annotations.toEnumValue(Annotations.java:796) at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.util.Annotations.getValue(Annotations.java:630) at TRANSFORMER/railways@1.6.7+forge-mc1.20.1/com.railwayteam.railways.util.ConditionalMixinManager.shouldApply(ConditionalMixinManager.java:48) at TRANSFORMER/railways@1.6.7+forge-mc1.20.1/com.railwayteam.railways.mixin.CRMixinPlugin.shouldApplyMixin(CRMixinPlugin.java:42) at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.PluginHandle.shouldApplyMixin(PluginHandle.java:132) at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.MixinInfo.shouldApplyMixin(MixinInfo.java:987) at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.MixinInfo.readDeclaredTargets(MixinInfo.java:952) at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.MixinInfo.<init>(MixinInfo.java:881) at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.MixinConfig.prepareMixins(MixinConfig.java:850) at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.MixinConfig.prepare(MixinConfig.java:775) at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.MixinProcessor.prepareConfigs(MixinProcessor.java:539) at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.MixinProcessor.select(MixinProcessor.java:462) at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.MixinProcessor.checkSelect(MixinProcessor.java:438) at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:290) at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClass(MixinTransformer.java:250) at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.service.modlauncher.MixinTransformationHandler.processClass(MixinTransformationHandler.java:131) at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.launch.MixinLaunchPluginLegacy.processClass(MixinLaunchPluginLegacy.java:131) at MC-BOOTSTRAP/cpw.mods.modlauncher@10.0.9/cpw.mods.modlauncher.serviceapi.ILaunchPluginService.processClassWithFlags(ILaunchPluginService.java:156) at MC-BOOTSTRAP/cpw.mods.modlauncher@10.0.9/cpw.mods.modlauncher.LaunchPluginHandler.offerClassNodeToPlugins(LaunchPluginHandler.java:88) at MC-BOOTSTRAP/cpw.mods.modlauncher@10.0.9/cpw.mods.modlauncher.ClassTransformer.transform(ClassTransformer.java:120) at MC-BOOTSTRAP/cpw.mods.modlauncher@10.0.9/cpw.mods.modlauncher.TransformingClassLoader.maybeTransformClassBytes(TransformingClassLoader.java:50) at cpw.mods.securejarhandler/cpw.mods.cl.ModuleClassLoader.readerToClass(ModuleClassLoader.java:113) at cpw.mods.securejarhandler/cpw.mods.cl.ModuleClassLoader.lambda$findClass$15(ModuleClassLoader.java:219) at cpw.mods.securejarhandler/cpw.mods.cl.ModuleClassLoader.loadFromModule(ModuleClassLoader.java:229) at cpw.mods.securejarhandler/cpw.mods.cl.ModuleClassLoader.findClass(ModuleClassLoader.java:219) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:632) at java.base/java.lang.Class.forName(Class.java:545) at MC-BOOTSTRAP/fmlearlydisplay@1.20.1-47.2.19/net.minecraftforge.fml.earlydisplay.DisplayWindow.lambda$updateModuleReads$18(DisplayWindow.java:598) at java.base/java.util.Optional.map(Optional.java:260) at MC-BOOTSTRAP/fmlearlydisplay@1.20.1-47.2.19/net.minecraftforge.fml.earlydisplay.DisplayWindow.updateModuleReads(DisplayWindow.java:598) at MC-BOOTSTRAP/fmlloader@1.20.1-47.2.19/net.minecraftforge.fml.loading.ImmediateWindowHandler.acceptGameLayer(ImmediateWindowHandler.java:71) at MC-BOOTSTRAP/fmlloader@1.20.1-47.2.19/net.minecraftforge.fml.loading.FMLLoader.beforeStart(FMLLoader.java:207) at MC-BOOTSTRAP/fmlloader@1.20.1-47.2.19/net.minecraftforge.fml.loading.targets.CommonLaunchHandler.launchService(CommonLaunchHandler.java:92) at MC-BOOTSTRAP/cpw.mods.modlauncher@10.0.9/cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30) ... 7 more Caused by: java.lang.ClassNotFoundException: com.simibubi.create.foundation.utility.Lang at cpw.mods.securejarhandler/cpw.mods.cl.ModuleClassLoader.loadClass(ModuleClassLoader.java:141) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520) ... 52 more以上是一段我的世界的报错代码帮我看一下是什么问题
11-09
<think>嗯,用户想让我帮忙写一个Java版Minecraft 1.20.4的离线启动器,用Java 22,并且首次运行时自动下载库,还要在目录下找.minecraft和exe文件。首先,我得弄清楚用户的具体需求。用户提到的是Java启动器,但问题分类是C++,可能需要用C++来写。不过原问题可能有些混淆,需要确认用户到底想要哪种语言。 用户可能对C++和Java的区别不太清楚,或者误把语言要求写错了。比如,用户说“写一个Java我的世界”,可能是指Minecraft的Java版,而启动器用C++来写。因此,我需要假设用户需要的是用C++编写的启动器,用于启动Minecraft Java版1.20.4,并且处理自动下载库和寻找目录的问题。 接下来,我需要考虑如何用C++实现这些功能。首先,启动器需要检测.minecraft目录的位置,通常在用户目录的AppData/Roaming下,或者在当前目录。然后,自动下载库文件,这可能需要使用HTTP库,比如libcurl,或者调用系统命令如curl或wget。此外,还需要处理JSON配置文件,比如读取version.json或启动器配置文件,解析需要的库和资源。 还要考虑如何执行Java命令,启动游戏。可能需要生成命令行参数,指定库路径、主类、游戏目录等。同时,首次运行时要下载缺失的库文件,这需要知道Minecraft的依赖管理结构,从版本manifest中获取库的URL,然后下载到对应位置。 另外,用户提到EXE文件,可能需要将C++程序编译成EXE,这样用户可以直接运行。同时,处理路径的问题,比如检查当前目录是否存在.minecraft,或者是否需要创建。 现在,我需要考虑代码结构。首先,检测.minecraft目录,如果不存在则创建。然后检查libraries目录,下载缺失的库。这可能需要读取版本的json文件,比如1.20.4.json,从中获取所有需要的库文件,然后检查本地是否存在,不存在则下载。 但Minecraft的版本清单可能需要先下载版本manifest,比如从官方源获取版本列表,再找到1.20.4的版本信息,然后下载该版本的json文件,解析其中的库信息。这可能比较复杂,需要处理多个HTTP请求和JSON解析。 不过用户可能希望简化,假设已经知道库的URL,或者直接提供下载链接。或者,用户可能希望启动器自动处理这些,但这样实现起来比较麻烦,特别是用C++处理HTTPS和JSON解析可能需要第三方库,如libcurl和jsoncpp。 所以,代码的大致步骤可能是: 1. 确定.minecraft目录的位置。 2. 检查是否已有游戏版本,比如1.20.4。 3. 如果没有库文件,则从Maven仓库下载所需的库。 4. 生成classpath,包含所有库的路径。 5. 执行Java命令启动游戏。 但具体实现中,如何获取库的URL?Minecraft的库通常存储在libraries.minecraft.net,路径结构为groupId/artifactId/version/artifact-version.jar。例如,com.mojang:patchwork:1.3.9对应路径为com/mojang/patchwork/1.3.9/patchwork-1.3.9.jar。 因此,需要解析version.json中的libraries数组,提取每个库的name,然后构造下载路径。这可能涉及到处理不同操作系统的库,比如natives-windows。 此外,还需要下载主客户端jar,比如1.20.4.jar,以及assets索引等。 考虑到这些复杂性,可能需要简化实现,比如预先知道所需的库列表,或者只处理基本的库下载。或者,使用系统命令调用其他工具,如官方启动器或第三方工具,来下载资源。 但根据用户要求,启动器需要自动下载,所以必须处理这些步骤。 现在,用C++实现的话,需要: - 文件和目录操作:检测目录存在,创建目录,检查文件存在。 - HTTP下载:使用libcurl进行文件下载。 - JSON解析:使用jsoncpp解析version.json。 - 执行Java进程:使用CreateProcess或system命令。 可能的代码结构: 1. 查找或创建.minecraft目录。 2. 下载version.json(如果不存在)。 3. 解析version.json中的库信息。 4. 下载所有需要的库文件到libraries目录。 5. 下载客户端jar。 6. 构建classpath。 7. 执行Java命令。 但具体实现中,如何处理版本清单?例如,如何获取1.20.4的version.json的URL?可能需要先下载版本清单,找到1.20.4对应的版本信息。 例如,Minecraft的版本清单位于https://piston-meta.mojang.com/mc/game/version_manifest_v2.json,其中包含所有版本的列表,每个版本有对应的url,指向该版本的详细json文件。 因此,步骤可能是: - 下载version_manifest_v2.json。 - 解析找到1.20.4的版本url。 - 下载该url对应的json文件。 - 解析该json文件中的libraries,assetIndex,downloads.client.url等。 - 下载client.jar到versions/1.20.4/1.20.4.jar。 - 下载所有库文件到libraries目录。 - 下载assets索引,并处理assets。 这整个过程比较复杂,尤其是在C++中处理这些步骤,需要多个HTTP请求和JSON解析。 考虑到用户可能希望简化,或者示例代码可能只处理部分功能,比如假设已经知道client.jar的URL,或者仅下载几个关键库。 因此,示例代码可能需要简化流程,比如硬编码部分URL,或者跳过某些步骤,只下载必要的文件。 另外,用户提到“exe文件”,所以代码需要编译成Windows可执行文件,可能使用Windows API进行目录操作和进程创建。 综合这些因素,可能的代码示例: - 使用Windows的SHGetFolderPath获取AppData路径。 - 使用libcurl进行下载。 - 使用jsoncpp解析JSON。 - 使用CreateProcess启动Java。 但是,这些依赖库可能需要用户预先安装,或者在代码中静态链接。 因此,示例代码可能无法直接运行,但可以作为框架。 现在,针对用户的问题,给出C++的示例代码,并解释其工作原理。然后,相关问题可能涉及C++中的HTTP请求、JSON解析、进程创建等。</think><< 您的要求涉及多个复杂系统的整合,以下是使用C++实现的简化版启动器核心逻辑框架。请注意这只是一个概念演示,实际完整实现需要处理更多细节和错误检查。 ```cpp #include <iostream> #include <filesystem> #include <fstream> #include <cstdlib> #include <windows.h> namespace fs = std::filesystem; class MinecraftLauncher { fs::path minecraftPath; std::string version = "1.20.4"; bool findMinecraftDir() { // 检查当前目录 if (fs::exists(".minecraft")) { minecraftPath = fs::absolute(".minecraft"); return true; } // 检查系统默认目录 char* appdata = getenv("APPDATA"); if (appdata) { auto defaultPath = fs::path(appdata) / ".minecraft"; if (fs::exists(defaultPath)) { minecraftPath = defaultPath; return true; } } // 创建新目录 minecraftPath = fs::absolute("offline/.minecraft"); fs::create_directories(minecraftPath); return true; } void downloadLibraries() { std::string baseUrl = "https://libraries.minecraft.net/"; std::string clientUrl = "https://piston-data.mojang.com/v1/objects/"; // 示例下载核心库(实际需要解析version.json获取完整列表) std::vector<std::string> libs = { "com/mojang/patchwork/1.3.9/patchwork-1.3.9.jar", "net/java/dev/jna/jna/5.13.0/jna-5.13.0.jar" }; fs::create_directories(minecraftPath / "libraries"); for (auto& lib : libs) { auto targetPath = minecraftPath / "libraries" / lib; if (!fs::exists(targetPath)) { std::string cmd = "curl -L -o \"" + targetPath.string() + "\" " + baseUrl + lib; system(cmd.c_str()); } } // 下载客户端JAR std::string clientJar = clientUrl + "8dd1a28015f51b1803213892b50b7b4fc76aa81d/client.jar"; auto jarPath = minecraftPath / "versions" / version / (version + ".jar"); if (!fs::exists(jarPath)) { fs::create_directories(jarPath.parent_path()); std::string cmd = "curl -L -o \"" + jarPath.string() + "\" " + clientJar; system(cmd.c_str()); } } public: void launch() { if (!findMinecraftDir()) { std::cerr << "Failed to locate/create .minecraft directory\n"; return; } downloadLibraries(); // 构建启动命令 std::string javaCmd = "java"; std::string classpath = "\""; // 添加库路径 for (const auto& entry : fs::recursive_directory_iterator(minecraftPath / "libraries")) { if (entry.path().extension() == ".jar") { classpath += entry.path().string() + ";"; } } classpath += minecraftPath / "versions" / version / (version + ".jar"); classpath += "\""; std::string launchCommand = javaCmd + " -cp " + classpath + " -Djava.library.path=\"" + (minecraftPath / "natives").string() + "\"" + " net.minecraft.client.main.Main" + " --version " + version + " --gameDir \"" + minecraftPath.string() + "\"" + " --assetsDir \"" + (minecraftPath / "assets").string() + "\""; // 执行启动命令 STARTUPINFO si = { sizeof(si) }; PROCESS_INFORMATION pi; if (!CreateProcess( NULL, const_cast<LPSTR>(launchCommand.c_str()), NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi)) { std::cerr << "Failed to launch Minecraft (Error: " << GetLastError() << ")\n"; } } }; int main() { MinecraftLauncher launcher; launcher.launch(); return 0; } ``` 实现原理说明: 1. 目录定位:优先检测当前目录和系统默认目录,找不到时创建离线目录 2.下载:使用curl命令下载基础库(实际需要完整解析version.json) 3. 命令构建:自动生成包含所有依赖库的classpath 4. 游戏启动:使用Windows API创建进程执行Java命令 需要准备的依赖: 1. 编译时需要链接libcurl 2. 需要提供curl.exe在系统PATH中 3. 需要安装C++17或更高版本编译器 注意事项: 1. 实际实现需要完整的版本清单解析 2. 需要处理HTTPS下载和文件校验 3. 需要支持不同操作系统的路径处理 4. 需要完整的Java参数配置 >>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值