最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

如何查看MC的崩潰報(bào)告(1)

2017-10-04 19:40 作者:森林蝙蝠  | 我要投稿

Minecraft是個(gè)很玄學(xué)的游戲,就算你什么模組也不加,玩?zhèn)€原版都有可能崩潰,無非是比有模組時(shí)少一點(diǎn)罷了。

正如酒石酸所說:發(fā)生崩潰時(shí)如果找不到崩潰報(bào)告,就說“我崩潰了怎么辦”,還不如上街找個(gè)算命先生算算為什么崩潰好些,那么在哪里找它們呢?

打開你的MC安裝目錄(一般為.minecraft文件夾,部分整合包的根目錄與整合包同名,比如all the mods,但無論名字有什么不同,它都是mods和saves的所在),找到crash-report文件夾,將內(nèi)部日期最新(即為你最近的一個(gè)崩潰報(bào)告)的文件,用記事本或者notepad++打開,就可以看到崩潰信息了。


(一個(gè)崩潰報(bào)告文件夾的長(zhǎng)相)

現(xiàn)在我們隨便找一個(gè)崩潰報(bào)告來看看它的結(jié)構(gòu)。

http://paste.ubuntu.com/25672422/

第28行以前“coremods are present”都是廢話——1.10以后非常多的崩潰報(bào)告里都有這些,莫非十幾個(gè)coremod(核心模組)每次都爆炸?

重要信息在31行之后,我們挨個(gè)讀:

description:rendering item

翻譯過來是“故障描述:渲染物品”,但是,渲染的是哪個(gè)物品?

java.lang.ClassCastException: net.minecraft.item.ItemAir cannot be cast to net.minecraft.item.ItemBlock 

at twilightforest.block.ColorHandler.lambda$init$13(ColorHandler.java:266) 

接下來兩行的內(nèi)容:java.lang.class cast exception——這是java.lang包的class(類)cast exception(拋出異常),Java虛擬機(jī)這家伙對(duì)異常一向沒什么責(zé)任感,然后就死給你看嘍。

net.minecraft.item.itemAir——net作為最上級(jí)的目錄,含義并不重要;minecraft就是MC本體了,item代指物品,itemAir代表空氣——MC的空格并不是什么都沒有,而是一個(gè)叫空氣的物品取代了那里,同樣,在MC的天空中也不是什么都沒有,而是“空氣方塊”。

cannot cast to xxx:不能變成……什么呢?

net.minecraft.item.itemBlock:結(jié)構(gòu)和上面那個(gè)itemair一樣,不過是“不能變成一個(gè)方塊(block)物品(item)”——block本身也是一種item,只不過是一個(gè)能夠被玩家右鍵放在世界中還有碰撞箱的item。

(有意向者可以讀一讀Java的書籍以了解Java文件的結(jié)構(gòu),比如Head First Java,此書行文排圖優(yōu)美,譯者帥氣逼人,是不可多得的好書)

連起來讀就是:“一個(gè)空氣物品(在玩家物品欄中)轉(zhuǎn)變?yōu)槟硞€(gè)方塊時(shí),java.lang包拋出異常?!?/p>

java.lang是Java之下最基礎(chǔ)的包之一,難道這玩意還壞了?當(dāng)然不是,讓我們看下一行。

at twilightforest.block.xxx——看到這里其實(shí)應(yīng)該松一口氣,因?yàn)閠wilight forest就是暮色森林啦,在這兒基本就可以確定是暮色崩潰了。當(dāng)然我們也不能把暮色一刪了事,看看能不能搶救呢?

twilightforest.block.ColorHandler.lambda$init$13(ColorHandler.java:266) 

我們可以結(jié)合暮色的GitHub代碼來看這一條:

https://github.com/TeamTwilight/twilightforest/tree/1.12.x/src/main/java/twilightforest/block

看到了嗎?崩潰報(bào)告的原句是twilightforest.block,代表崩潰發(fā)生在twilightforest下面的block文件夾,與上面的GitHub代碼地址形成對(duì)應(yīng)。

不難看出,如崩潰語句中所說,代碼中blocks文件夾下面確實(shí)有一個(gè)colorhandler類(.java文件,編譯之后就變成.class擴(kuò)展名了),它的下面“l(fā)ambda$init$13”,代表這個(gè)類的源碼中,一個(gè)lambda運(yùn)算符出現(xiàn)了問題。

問題是發(fā)現(xiàn)了,但是如何解決呢?答:解決不了,除非我們是搞開發(fā)的——你知道lambda出現(xiàn)在哪里?只能在GitHub頁面向作者發(fā)issue(問題),希望作者大發(fā)慈悲將其修復(fù)。

讓我們繼續(xù)往下看第36,37行:

at mod.chiselsandbits.render.helpers.ModelUtil.getItemStackColor(ModelUtil.java:466) 

at mod.chiselsandbits.client.ItemColorPatterns.func_186726_a(ItemColorPatterns.java:28)

at就是在,“在哪哪哪”;mod.chiselandbits.xxx代表一個(gè)叫chisel and bits(雕刻工藝)的mod發(fā)生了異常;cilent代表客戶端,render代表渲染器——是雕刻工藝的渲染機(jī)制出現(xiàn)了問題?

這要問你當(dāng)時(shí)在干什么了,很多涉及到這種裝飾類模組的崩潰,都是當(dāng)事人在雕刻/打開箱子/打開某個(gè)機(jī)器的GUI時(shí)出現(xiàn)的渲染錯(cuò)誤,而這個(gè)崩潰發(fā)生時(shí),其實(shí)我并沒有在雕刻什么東西,所以可以排除。

38行之后:

net.minecraft.client.renderer.xxx——MC本身的渲染器;

codechicken.lib.render.xxx——codechickenlib(CCL)的渲染器;

net.minecraft.client.gui.xxx——MC的GUI渲染;

net.minecraftforge.client.xxx——forge的客戶端;

sun.reflect.xxx——sun公司為Java寫的反射機(jī)制;

接下來還有幾個(gè)便不一一列舉,但是它們都有一個(gè)共同點(diǎn):都是MC,forge甚至Java基本的東西,基本的東西是很難出錯(cuò),也很難去進(jìn)行修復(fù)的——這代表著代碼的大幅變動(dòng),所以,它們拋出的異常其實(shí)是下游(暮色和雕刻工藝這樣負(fù)責(zé)實(shí)現(xiàn)的mod)出錯(cuò)時(shí)扔給它們的,然而它們也沒法解決,繼續(xù)拋出到Java虛擬機(jī),然后Java虛擬機(jī)破罐子破摔崩潰了。

73行以后:stacktrace(異常棧軌跡)里面的信息與先前的基本一樣,沒啥可看。

121行:affected level(影響)

主要是第129行所代表的內(nèi)容level spawn location:代表著崩潰發(fā)生的具體位置和區(qū)塊,無法修復(fù)時(shí)可以用worldedit(創(chuàng)世神插件),MCEdit,NBTExplorer之類編輯器刪除掉這一方塊/區(qū)塊。

World: (-28,64,256), (玩家所在點(diǎn)-28,64,256)

Chunk: (at 4,4,0 in -2,16; contains blocks -32,0,256 to -17,255,271), (區(qū)塊-2,16,區(qū)塊內(nèi)部坐標(biāo)4,4,0,包括了-32,0,256到-17,255,271坐標(biāo)的方塊)

Region: (-1,0; contains chunks -32,0 to -1,31, blocks -512,0,0 to -1,255,511)(區(qū)域:包括了-32,0到-1,31這一大片區(qū)塊,沒啥用處)

151行system details之后是你的系統(tǒng)詳情,包括你的系統(tǒng),Java版本,內(nèi)存,安裝了哪些模組等等。

Minecraft Version: 1.11.2 (MC版本1.11.2)

Operating System: Windows 10 (amd64) version 10.0(操作系統(tǒng)Windows 10 64位,一般與MC的崩潰沒有關(guān)系,以后問崩潰的時(shí)候不用說你是哪個(gè)系統(tǒng))

Java Version: 1.8.0_144, Oracle Corporation(Java版本:1.8.0_144,目前的最新版本,如果是Java 1.8.0_60,25甚至是Java 7這樣的舊版本請(qǐng)更新)

Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation Memory: 594339048 bytes (566 MB) / 2823290880 bytes (2692 MB) up to 5324144640 bytes (5077 MB) 

(當(dāng)前內(nèi)存占用,最大可以有5077MB)

JVM Flags: 5 total; -XX:+UseParallelGC -XX:-UseGCOverheadLimit -XX:-OmitStackTraceInFastThrow -Xmn128m -Xmx5120m(Java虛擬機(jī)參數(shù),一般都是默認(rèn)參數(shù)啟動(dòng)的,不需要擔(dān)心)

UCHIJAAAA——僅代表該模組加載正確,如果加載不正確就是UE/UCE形式。

接下來都是廢話,不用看。

以上就是對(duì)一個(gè)一般的崩潰報(bào)告描述,肯定有不全甚至錯(cuò)漏的地方,歡迎大家提出,我會(huì)后續(xù)更新修正。



如何查看MC的崩潰報(bào)告(1)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
洛川县| 正定县| 浑源县| 南丹县| 扬中市| 衡水市| 鞍山市| 景谷| 庐江县| 酒泉市| 石河子市| 区。| 昌乐县| 唐海县| 淮阳县| 固安县| 林州市| 布尔津县| 陆河县| 昌平区| 修武县| 盐边县| 湘乡市| 汶川县| 河北省| 万全县| 南平市| 安化县| 武定县| 五台县| 哈尔滨市| 大名县| 紫阳县| 南和县| 三明市| 清水县| 隆昌县| 金乡县| 阜城县| 佛冈县| 衡东县|