啟動時 FTB 不穩定崩潰
我正在執行 Windows 8.1,當我嘗試啟動 FTB Unstable 1.7.2 (v1.0.4) 時,它會凍結幾秒鐘,然後它會在日誌中列印一個崩潰報告,僅顯示:null: java.lang .NullPointerException紅色文本。提前致謝。
完整日誌:
[19:13:15] [INFO] LaunchFrameHelpers.printInfo:29: FTBLaunch 開始 向上(版本 1.3.14 建構:10314) [19:13:15] [INFO] LaunchFrameHelpers.printInfo:30:Java 版本:1.7.0_55 [19:13:15] [INFO] LaunchFrameHelpers.printInfo:31:Java 供應商:甲骨文公司 [19:13:15] [INFO] LaunchFrameHelpers.printInfo:32:Java 首頁:C:\Program Files\Java\jre7 [19:13:15] [INFO] LaunchFrameHelpers.printInfo:33:Java 規範:Java 虛擬 機器規範版本:Oracle Corporation 的 1.7 [19:13:15] [INFO] LaunchFrameHelpers.printInfo:35: Java vm: Java HotSpot(TM) 64-Bit Server VM version: 24.55-b03 by Oracle Corporation [19:13:15] [INFO] LaunchFrameHelpers.printInfo:36:作業系統:Windows 8.1 6.3(64 位) [19:13:15] [INFO] LaunchFrameHelpers.printInfo:37:啟動器安裝目錄:E:\Windows 8 [19:13:15] [INFO] JGoogleAnalyticsTracker$2.run:484:AnalyticsBackgroundThread 已啟動 [19:13:16] [INFO] LaunchFrameHelpers.printInfo:38:系統記憶體:4128M 空閒,總共 5119M [19:13:16] [錯誤] OutputOverride.write:46:來自控制台:2014 年 7 月 8 日晚上 7:13:16 java.util.prefs.WindowsPreferences 警告:無法打開/創建首選項根節點 Software\JavaSoft\首選項位於根 0x80000002。Windows RegCreateKeyEx(...) 返回錯誤程式碼 5。 [19:13:19] [INFO] JavaFinder.parseJavaVersion:157:FTB 啟動器發現安裝了以下 Java 版本: [19:13:19] [INFO] JavaFinder.parseJavaVersion:159:Java 版本:1.7.0_55 排序為:1.7.0_55 64 位 Java,位於:C:\Program Files\Java\jre7\bin\java.exe [19:13:19] [INFO] avaFinder.parseJavaVersion:159:Java 版本:1.8.0_20-ea 排序為:1.8.0_20 32 位 Java,位於:C:\Program Files (x86)\Java\jdk1.8.0_20 \bin\java.exe [19:13:19] [INFO] JavaFinder.parseJavaVersion:159:Java 版本:1.7.0_55 排序為: 1.7.0_55 64 位 Java 位於:C:\Windows\system32\java.exe [19:13:19] [INFO] JavaFinder.parseJavaVersion:159:Java 版本:1.7.0_55 排序為:1.7.0_55 64 位 Java,位於:C:\Program Files\Java\jre7\bin\javaw.exe [19:13:19] [INFO] JavaFinder.parseJavaVersion:185:首選:Java 版本:1.7.0_55 排序為:1.7.0_55 64 位 Java,位於:C:\Program Files\Java\jre7\bin\java.exe [19:13:19] [INFO] DownloadUtils.run:349:DownloadUtils.run() 開始 [19:13:19] [INFO] DownloadUtils.run:370:平衡設置:0.6 > 0.3805838999132759 [19:13:19] [INFO] DownloadUtils.run:373: Balance 已選擇 Automatic:CurseCDN [19:13:20] [INFO] DownloadUtils.run:429:DL 準備就緒 [19:13:20] [INFO] DownloadUtils.run:461: 使用下載伺服器 Automatic:CurseCDN 在主機 ftb.cursecdn.com (198.41.209.103) [19:13:21] [INFO] I18N.addFiles:130: [i18n] 備份 enUS 已載入 [19:13:21] [INFO] I18N.setLocale:153: [i18n] enUS 英語語言文件已載入! [19:13:21] [INFO] LocaleUpdater.run:76: [i18n] 檢查更新... [19:13:22] [INFO] LocaleUpdater.run:93: [i18n] remoteVer = 10 [19:13:22] [INFO] LocaleUpdater.run:106: [i18n] localVer = 10 [19:13:22] [INFO] LocaleUpdater.run:111: [i18n] 文件是最新的 [19:13:23] [INFO] OptionsPane.:155: [i18n] 將 0 enUS 添加到選項窗格 [19:13:23] [INFO] OptionsPane.:155: [i18n] 將 1 cyGB 添加到選項窗格 [19:13:23] [INFO] OptionsPane.:155: [i18n] 將 2 daDK 添加到選項窗格 [19:13:23] [INFO] OptionsPane.:155: [i18n] 將 3 deDE 添加到選項窗格 [19:13:23] [INFO] OptionsPane.:155: [i18n] 向選項窗格添加了 4 個 esES [19:13:23] [INFO] OptionsPane.:155: [i18n] 將 5 frFR 添加到選項窗格 [19:13:23] [INFO] OptionsPane.:155: [i18n] 將 6 itIT 添加到選項窗格 [19:13:23] [INFO] OptionsPane.:155: [i18n] 將 7 maHU 添加到選項窗格 [19:13:23] [INFO] OptionsPane.:155: [i18n] 將 8 nlNL 添加到選項窗格 [19:13:23] [INFO] OptionsPane.:155: [i18n] 將 9 ptBR 添加到選項窗格 [19:13:23] [INFO] OptionsPane.:155: [i18n] 將 10 ptPT 添加到選項窗格 [19:13:23] [INFO] OptionsPane.:155: [i18n] 將 11 ruRU 添加到選項窗格 [19:13:23] [INFO] OptionsPane.:155: [i18n] 將 12 svSE 添加到選項窗格 [19:13:23] [INFO] I18N.setLocale:153: [i18n] enUS 英語語言文件已載入! [19:13:23] [INFO] AuthlibDLWorker.doInBackground:58:調試:AuthlibDLWorker:正在載入 Authlib... [19:13:24] [INFO] ModpackLoader.run:60: 載入 modpacks.xml 的 modpack 資訊... [19:13:24] [INFO] ModpacksPane $8.run:315:添加包 1(怪物) [19:13:25] [INFO] ModpacksPane$8.run:315:添加包 2(Pax East 2014 地圖) [19:13:25] [INFO] ModpacksPane $8.run:315:添加包 3 (Direwolf20) [19:13:25] [INFO] ModpacksPane$8.run:315:添加包 4(Horizons) [19:13:25] [INFO] ModpacksPane$8.run:315:添加包 5(科技世界 2) [19:13:25] [INFO] ModpacksPane$8.run:315:添加包 6(魔法世界 2) [19:13:25] [INFO] ModpacksPane $8.run:315:添加包 7 (FTBLite2) [19:13:26] [INFO] ModpacksPane$8.run:315:添加包 8(FTB 釋放) [19:13:26] [INFO] ModpackLoader.run:60: 載入 EPiCCRAFT.xml 的 modpack 資訊... [19:13:26] [INFO] ModpacksPane $8.run:315:添加包 9(FTB Ultimate) [19:13:26] [INFO] TexturePackLoader.run:42:正在載入紋理包資訊... 19:13:26] [INFO] MapLoader.run:42:正在載入地圖資訊... [19:13:26] [INFO] ModpacksPane$8.run:315:添加包 10(不穩定的 1.7.2) [19:13:26] [INFO] ModpacksPane $8.run:315:添加包 11(FTB Lite) [19:13:26] [INFO] AuthlibDLWorker.downloadJars:134:本地 Authlib 版本好,跳過下載 [19:13:26] [INFO] AuthlibDLWorker.doInBackground:69:將 Authlib 添加到類路徑 [19:13:26] [INFO] ModpacksPane$8.run:315:添加包 12(魔法農場 2:技術冒險) [19:13:26] [INFO] ModpacksPane$8.run:315:添加包 13(BloodNBones) [19:13:26] [INFO] ModpacksPane$8.run:315:添加包 14(農業天空:鐵桿任務) [19:13:26] [INFO] ModpacksPane $8.run:315:添加包 15(體素) [19:13:26] [INFO] ModpacksPane $8.run:315:添加包 16(臭名昭著) [19:13:26] [INFO] ModpacksPane$8.run:315:添加包 17(Lapito 的銀河系 Modpack) [19:13:27] [INFO] ModpacksPane$8.run:315:添加包 18(Direwolf20 1.5 v2) [19:13:27] [INFO] ModpacksPane $8.run:315:添加包 19(Direwolf20 包) [19:13:27] [INFO] ModpacksPane$8.run:315:添加包 20(MindCrack 包) [19:13:27] [INFO] ModpacksPane$8.run:315:添加包 21(YogCraft Modpack) [19:13:27] [INFO] ModpacksPane $8.run:315:添加包 22(FTB Unhinged) [19:13:27] [INFO] ModpacksPane$8.run:315:添加包 23(新世界 Mod 包) [19:13:27] [INFO] ModpacksPane$8.run:315:添加包 24(RPG 沉浸包) [19:13:27] [INFO] ModpacksPane$8.run:315: 添加包 25 (BronyModPack) [19:13:27] [INFO] ModpacksPane $8.run:315:添加包 26(Ampz Modpack) [19:13:27] [INFO] ModpacksPane $8.run:315: 添加包 27 (VoxelModPack) [19:13:27] [INFO] ModpacksPane $8.run:315:添加包 28(魔法農場) [19:13:27] [INFO] ModpacksPane$8.run:315:添加包 29(魔法世界) [19:13:27] [INFO] ModpacksPane$8.run:315:添加包 30(科技世界) [19:13:27] [INFO] ModpacksPane$8.run:315:添加包 31(Pax 挑戰包) [19:13:28] [INFO] ModpacksPane$8.run:315:添加包 32(Feed The Beast Retro SSP) [19:13:28] [INFO] ModpacksPane$8.run:315:添加包 33(Feed The Beast Retro SMP) [19:13:28] [INFO] ModpacksPane $8.run:315:添加包 34(慢流包) [19:13:28] [INFO] ModpacksPane $8.run:315:添加包 35(餵野獸 Beta 包 A) [19:13:28] [INFO] ModpacksPane $8.run:315:添加包 36 (EPiCCRAFT) [19:13:28] [INFO] TexturepackPane$4.run:229: 添加紋理包 1 (Soartex Fanver) [19:13:28] [INFO] MapsPane$4.run:230:添加地圖 1(農業天空預設地圖) [19:13:28] [INFO] TexturepackPane$4.run:229:添加紋理包 2(Jadedcat Mixpack) [19:13:28] [INFO] MapsPane$4.run:230:添加地圖 2(農業天空平面地圖) [19:13:28] [INFO] TexturepackPane$4.run:229:添加紋理包 3(忠實) [19:13:28] [INFO] MapsPane$4.run:230:添加地圖 3(農業天空伺服器地圖) [19:13:28] [INFO] MapsPane$4.run:230:添加地圖 4(Direwolf20 地圖 Ep.0) [19:13:28] [INFO] MapsPane$4.run:230:添加地圖 5(FTB Pax 挑戰) [19:13:28] [INFO] MapsPane$4.run:230:添加地圖 6(Direwolf20 地圖 Ep.0) [19:13:28] [INFO] TexturepackPane$4.run:229:添加紋理包 4(JohnSmith Technicians Remix) [19:13:28] [INFO] MapsPane$4.run:230:添加地圖 7(Direwolf20 地圖 Ep.10) [19:13:28] [INFO] MapsPane$4.run:230:添加地圖 8(Direwolf20 地圖 Ep.20) [19:13:28] [INFO] TexturepackPane$4.run:229:添加紋理包 5(熟悉但不同) [19:13:28] [INFO] MapsPane$4.run:230:添加地圖 9(Direwolf20 地圖 Ep.30) [19:13:28] [INFO] MapsPane$4.run:230:添加地圖 10(Direwolf20 地圖 Ep.40) [19:13:28] [INFO] TexturepackPane$4.run:229:添加紋理包 6(愛與寬容) [19:13:28] [INFO] MapsPane$4.run:230:添加地圖 11(Direwolf20 地圖 Ep.50) [19:13:28] [INFO] MapsPane$4.run:230:添加地圖 12(Direwolf20 地圖 Ep.80) [19:13:28] [INFO] MapsPane$4.run:230:添加地圖 13(FTB 正常) [19:13:28] [INFO] MapsPane$4.run:230:添加地圖 14(FTB 瘋狂) [19:13:33] [INFO] LaunchFrame.doLogin:689:正在登錄... [19:13:33] [INFO] LaunchFrame $15.done:732:登錄完成。 [19:13:33] [INFO] LaunchFrame.runGameUpdater:781:調試:runGameUpdater:ForceUpdate:假 [19:13:33] [資訊] LaunchFrame.runGameUpdater:782: 調試: runGameUpdater: installPath: E:\Windows 8 [19:13:33] [資訊] LaunchFrame.runGameUpdater:783:調試:runGameUpdater:包目錄: ftb_17testpack [19:13:33] [INFO] LaunchFrame.runGameUpdater:784:調試:runGameUpdater:包檢查路徑:ftb_17testpack\version [19:13:43] [INFO] MinecraftLauncherNew.syncAssets:238:同步資產: [19:13:54] [INFO] MinecraftLauncherNew.launchMinecraft:74:Java 路徑:C:\Program Files\Java\jre7\bin\javaw.exe [19:13:54] [資訊] MinecraftLauncherNew.launchMinecraft:75:包:不穩定 1.7.2 1.7.2 [19:13:54] [INFO] MinecraftLauncherNew.setMemory:221:將 MinMemory 設置為 256 [19:13:54] [INFO] MinecraftLauncherNew.setMemory:223:將 MaxMemory 設置為 2048 [19:13:54] [INFO] MinecraftLauncherNew.launchMinecraft:97:預設 PermSize 為 256m [19:13:54] [錯誤] ProcessBuilder.start:-1->LaunchFrame.launchMinecraftNew:1135: null: java.lang.NullPointerException java.lang.ProcessBuilder.start(未知 資源) net.ftb.mclauncher.MinecraftLauncherNew.launchMinecraft(MinecraftLauncherNew.java:212) net.ftb.gui.LaunchFrame.launchMinecraftNew(LaunchFrame.java:1095) net.ftb.gui.LaunchFrame.setupNewStyle(LaunchFrame.java:877) net.ftb.gui.LaunchFrame.runGameUpdater(LaunchFrame.java:826) net.ftb.gui.LaunchFrame.access$600(LaunchFrame.java:120) net.ftb.gui.LaunchFrame$15.done(LaunchFrame.java:738) javax.swing.SwingWorker$5.run(未知來源) javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.run(未知 來源)sun.swing.AccumulativeRunnable.run(未知來源) javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.actionPerformed(未知 來源)javax.swing.Timer.fireActionPerformed(未知來源) javax.swing.Timer$DoPostEvent.run(未知來源) java.awt.event.InvocationEvent.dispatch(未知來源) java.awt.EventQueue.dispatchEventImpl(未知來源) java.awt.EventQueue.access$200(來源不明) java.awt.EventQueue$3.run(未知來源) java.awt.EventQueue$3.run(未知來源) java.security.AccessController.doPrivileged(本機方法) java.security.ProtectionDomain$1.doIntersectionPrivilege(未知 來源)java.awt.EventQueue.dispatchEvent(未知來源) java.awt.EventDispatchThread.pumpOneEventForFilters(未知來源) java.awt.EventDispatchThread.pumpEventsForFilter(未知來源) java.awt.EventDispatchThread.pumpEventsForHierarchy(未知來源) java.awt.EventDispatchThread.pumpEvents(未知來源) java.awt.EventDispatchThread.pumpEvents(未知來源) java.awt.EventDispatchThread.run(未知來源)
問題是我正在執行 Java 8!Java 8 破壞了 MinecraftForge,所以我需要訪問一個站點(下面的連結!)並按照說明進行操作,它又可以正常工作了!我建議所有有這個問題的人都這樣做!
更好的解釋:造成問題的原因是 Minecraft Forge 中的 CoreModManager,您需要做的就是下載 1.7.2 版本或 1.6.4 版本並將其放在適當的目錄中。
兩個 CoreModManager 的連結: CoreModManager.class,用於 Forge #965 for Minecraft 1.6.4。
CoreModManager.class,用於 Forge #1121 / #1147,用於 Minecraft 1.7.2
CoreModManager.class , Forge #1208 for Minecraft 1.7.10]
說明: – 香草 –
我將假設您已經將 Forge 安裝到香草啟動器中以獲取這些說明。
從這裡您需要找到進入 Forge 庫目錄的方法。在 Windows 上,直接路由是:
對於 1.6.4:%appdata%.minecraft\libraries\net\minecraftforge\minecraftforge\9.11.1.965
對於 1.7.2:%appdata%.minecraft\libraries\net\minecraftforge\forge\1.7.2-10.12.2.1147(或為您使用的版本切換 1147)
如果你使用 Linux,那麼你就知道你的主目錄了。如果您使用 OSX,那麼我相信其他人可以幫助您找到它,但我想您的基本 Minecraft 目錄與 Linux 一樣位於您的主目錄中。
如果需要,您可以在此時對 JAR 進行備份。但是現在打開 WinRAR 中的 JAR 或您用於此類事情的任何程序。首先,繼續刪除 JAR 根目錄中的 META-INF 目錄,否則您將遇到與安全相關的崩潰,就像在舊的 JAR 修改時代一樣。現在瀏覽 cpw/mods/fml/relauncher。你應該在這裡看到一個 CoreModManager.class。只需將此更新檔版本放在頂部,您就可以開始使用了!
– 自由貿易區 –
這與上述說明相對相同。唯一的區別是您必須在 FTB 目錄中找到庫目錄。然後執行與上述相同的過程,這應該會修復啟動器上的每個相關包。
– 技術 –
這有點不同。您需要修補單個 modpack。每次更新包時,您可能都必須再次修補它。但這沒什麼大不了的。為此,首先進入您的包目錄。對於 Windows,這是:%appdata%.technic\modpacks
現在進入您要修復的任何包。對於這個例子,我們將使用主要的 Tekkit。所以導航到 tekkitmain,然後進入 bin。你應該在這裡看到一個 modpack.jar。這基本上就是你的 Forge JAR。按照上面的過程修補 JAR,刪除 META-INF 並將類文件添加到適當的位置,您的包現在應該再次執行。
– ATLauncher –
同樣,這略有不同,需要您像 Technic 一樣修復每個實例。轉到您的 ATLauncher 目錄,然後進入實例。找到要修復的實例,然後進入 jarmods。您應該在此處看到 Forge JAR。因此,請執行上述過程來修補 JAR,並且應該修復包。像 Technic 一樣,更新可能會破壞它。
– 多MC–
目前我沒有簡單的解決方法,因為它會在檢測到修改後自動重新下載 Forge JAR,這取決於具體情況,這既好又煩人!
– 伺服器 –
在這種情況下,Forge 已經在伺服器 JAR 中。您不想刪除所有 META-INF 或伺服器無法啟動,根據 DAOWAce 下面的文章,只需刪除 FORGE.DSA 就足夠了。然後只需將下載的類文件複製到 JAR 中的適當位置即可。
– 雜項 –
現在,對於那些感興趣的人來說,這是做什麼的技術細節。Java 8 更新 20 改變了 Collections.sort 的工作方式,不再複製 List 而是就地修改它。由於 FML 在此特定時刻迭代此列表,因此您會遇到崩潰。所以這個更新檔所做的就是用 CoreModManager 中的包裝函式替換 Collections.sort。
它這樣做:
public static void sort(List list, Comparator c) { T
$$ $$toSort = list.toArray((T$$ $$)新對象$$ list.size() $$); Arrays.sort(toSort, c); for (int j = 0; j < toSort.length; j++) list.set(j, toSort$$ j $$); } 這基本上是用於修復 FML 更高版本的相同程式碼的修改版本,只是為了更新檔而不同地實現。
我所做的是在一個空類中編譯這段程式碼,然後使用 Java 字節碼編輯器從該類中提取字節碼並在 CoreModManager 中創建相同的方法。最後我修改了 sortTweakList 方法來呼叫 cpw/mods/fml/relauncher/CoreModManager/sort 而不是 java/util/Collections/sort。如果您擔心的話,您可以使用 JBE 來確認這是該修補文件與原始文件之間的唯一區別。
1.6.4 更新檔有可能適用於 Forge 的 1.6.x 的其他版本,您只需嘗試一下即可。這兩個 1.7.2 版本是“最新”和“推薦”版本,並且都具有相同版本的 CoreModManager,但如果需要,它也可能適用於該版本的早期版本。
希望這可以幫助!