Android Studio Run app 報錯

問題描述

今天在碼代碼時遇到一個莫名其妙的問題,問題是這樣的:

不論 clean project锣咒、rebuild project 還是 make module 都能順利執(zhí)行草讶,但是只要 Run app 就會報如下錯誤

Error:Execution failed for task ':app:transformClassesWithDexForDebug'.
> com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command '/home/connorlin/Program/jdk1.7.0_71/bin/java'' finished with non-zero exit value 134

問題分析

通常,看到 with non-zero exit value 134 首先想到的是依賴沖突了臭家,但細(xì)心點能發(fā)現(xiàn)忽匈,依賴沖突一般是with non-zero exit value 1with non-zero exit value 2房午,此處卻是134

再看Process 'command '/home/connorlin/Program/jdk1.7.0_71/bin/java'' finished with non-zero exit value 134 似乎是JDK相關(guān)丹允。

那么郭厌,首先排除依賴沖突,因為之前是正常的雕蔽,代碼又沒任何改動折柠,是突然出現(xiàn)報錯。再看到JDK批狐,檢查是否JDK配置出問題了扇售,因為我同時裝了sun JDKOpenJDK

問題定位

一次定位

開始查看java 版本:

java -version

結(jié)果顯示:

java version "1.7.0_75"
OpenJDK Runtime Environment (IcedTea 2.5.4) (7u75-2.5.4-1~trusty1)
OpenJDK 64-Bit Server VM (build 24.75-b04, mixed mode)

再看:

update-alternatives --config java

結(jié)果顯示:

有 3 個候選項可用于替換 java (提供 /usr/bin/java)嚣艇。

  選擇       路徑                                          優(yōu)先級  狀態(tài)
------------------------------------------------------------
  0            /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java   1071      自動模式
* 1            /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java   1071      手動模式
  2            /usr/local/jdk/bin/java                          255       手動模式
  3            /usr/local/jdk1.6.0_30/bin/java                  255       手動模式

要維持當(dāng)前值[*]請按回車鍵承冰,或者鍵入選擇的編號:

證明JDK環(huán)境配置沒錯。

接著食零,把Android Studio JDK改為OpenJDK:

/home/connorlin/Program/jdk1.7.0_71
改為
/usr/lib/jvm/java-7-openjdk-amd64

再次編譯 Run app困乒,再次報錯,但本次報錯與上次不一樣:

Error:Failed to complete Gradle execution.
Cause:
Gradle build daemon disappeared unexpectedly (it may have been killed or may have crashed)

居然Gradle build daemon 異常贰谣,那肯定不是代碼的問題了娜搂。

二次定位

后來迁霎,無意中發(fā)現(xiàn)在項目跟路徑下有多個類似hs_err_pid11776.log 文件,其內(nèi)容節(jié)選如下:

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00007fcac7773d44, pid=11776, tid=140508865505024
#
# JRE version: OpenJDK Runtime Environment (7.0_75-b13) (build 1.7.0_75-b13)
# Java VM: OpenJDK 64-Bit Server VM (24.75-b04 mixed mode linux-amd64 compressed oops)
# Derivative: IcedTea 2.5.4
# Distribution: Ubuntu 14.04 LTS, package 7u75-2.5.4-1~trusty1
# Problematic frame:
# V  [libjvm.so+0x82ad44]  MoveAndUpdateClosure::do_addr(HeapWord*, unsigned long)+0xa4
#
# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# If you would like to submit a bug report, please include
# instructions on how to reproduce the bug and visit:
#   http://icedtea.classpath.org/bugzilla
#

---------------  T H R E A D  ---------------

Current thread (0x00007fcac0023800):  GCTaskThread [stack: 0x00007fcac4f42000,0x00007fcac5043000] [id=11785]

siginfo:si_signo=SIGSEGV: si_errno=0, si_code=1 (SEGV_MAPERR), si_addr=0x00000000007d0038

Registers:
RAX=0x00000000007d0020, RBX=0x00007fcac5041cb0, RCX=0x0000000000000000, RDX=0x00000000007d0020
RSP=0x00007fcac5041ba0, RBP=0x00007fcac5041be0, RSI=0x00000000007d0020, RDI=0x00000000c47529c0
R8 =0x00007fcaa5800000, R9 =0x00007fcac7d0b420, R10=0x00000000030c9100, R11=0x00007fcac850f810
R12=0x0000000000000001, R13=0x0000000000000008, R14=0x00007fcac007abe0, R15=0x00000000c47529b8
RIP=0x00007fcac7773d44, EFLAGS=0x0000000000010202, CSGSFS=0x0000000000000033, ERR=0x0000000000000004
TRAPNO=0x000000000000000e

通過查看百宇,其中:

---------------  T H R E A D  ---------------

Current thread (0x00007fcac0023800):  GCTaskThread [stack: 0x00007fcac4f42000,0x00007fcac5043000] [id=11785]

siginfo:si_signo=SIGSEGV: si_errno=0, si_code=1 (SEGV_MAPERR), si_addr=0x00000000007d0038

表明異常時正在運行GCTaskThread 垃圾回收線程欧引,再看到后面還有一段:

VM Arguments:
jvm_args: -XX:MaxPermSize=256m -XX:+HeapDumpOnOutOfMemoryError -Xmx1024m -Dfile.encoding=UTF-8 -Duser.country=CN -Duser.language=zh -Duser.variant 
java_command: org.gradle.launcher.daemon.bootstrap.GradleDaemon 2.10
Launcher Type: SUN_STANDARD

似乎是內(nèi)存不足引起的。

問題解決

一次解決

嘗試將 HeapSize 調(diào)大恳谎,在 app level的build.gradle中配置:

dexOptions {
    preDexLibraries = false
    javaMaxHeapSize "4g"   // 調(diào)大 HeapSize
}

很遺憾,問題依然憋肖! 那還原此修改因痛,防止二次事故。

二次解決

實在沒辦法岸更,那嘗試重啟大法吧鸵膏!

當(dāng)然,不是簡單的重啟怎炊,先要清除緩存再重啟Android Studio谭企。

Android Studio -> File -> Invalidate Caches / Restart ..

最后,發(fā)現(xiàn)重啟大法果然好用评肆,居然順利跑起來了债查,目前為止沒有再出現(xiàn)該問題。

問題結(jié)果

通過清除Android Studio緩存來解決該問題:

在 Android Studio 的 File 菜單中選擇 Invalidate Caches / Restart ..來清理緩存并重啟Android Studio瓜挽。

Android Studio -> File -> Invalidate Caches / Restart ..

但個中緣由卻并不清楚盹廷,暫且記錄下來,望知情人士指教久橙!

That's all!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末俄占,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子淆衷,更是在濱河造成了極大的恐慌缸榄,老刑警劉巖,帶你破解...
    沈念sama閱讀 207,248評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件祝拯,死亡現(xiàn)場離奇詭異甚带,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)鹿驼,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,681評論 2 381
  • 文/潘曉璐 我一進(jìn)店門欲低,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人畜晰,你說我怎么就攤上這事砾莱。” “怎么了凄鼻?”我有些...
    開封第一講書人閱讀 153,443評論 0 344
  • 文/不壞的土叔 我叫張陵腊瑟,是天一觀的道長聚假。 經(jīng)常有香客問我,道長闰非,這世上最難降的妖魔是什么膘格? 我笑而不...
    開封第一講書人閱讀 55,475評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮财松,結(jié)果婚禮上瘪贱,老公的妹妹穿的比我還像新娘。我一直安慰自己辆毡,他們只是感情好菜秦,可當(dāng)我...
    茶點故事閱讀 64,458評論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著舶掖,像睡著了一般球昨。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上眨攘,一...
    開封第一講書人閱讀 49,185評論 1 284
  • 那天主慰,我揣著相機(jī)與錄音,去河邊找鬼鲫售。 笑死共螺,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的龟虎。 我是一名探鬼主播璃谨,決...
    沈念sama閱讀 38,451評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼鲤妥!你這毒婦竟也來了佳吞?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,112評論 0 261
  • 序言:老撾萬榮一對情侶失蹤棉安,失蹤者是張志新(化名)和其女友劉穎底扳,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體贡耽,經(jīng)...
    沈念sama閱讀 43,609評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡衷模,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,083評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了蒲赂。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片阱冶。...
    茶點故事閱讀 38,163評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖滥嘴,靈堂內(nèi)的尸體忽然破棺而出木蹬,到底是詐尸還是另有隱情,我是刑警寧澤若皱,帶...
    沈念sama閱讀 33,803評論 4 323
  • 正文 年R本政府宣布镊叁,位于F島的核電站尘颓,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏晦譬。R本人自食惡果不足惜疤苹,卻給世界環(huán)境...
    茶點故事閱讀 39,357評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望敛腌。 院中可真熱鬧卧土,春花似錦、人聲如沸像樊。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,357評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽凶硅。三九已至,卻和暖如春扫皱,著一層夾襖步出監(jiān)牢的瞬間足绅,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,590評論 1 261
  • 我被黑心中介騙來泰國打工韩脑, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留氢妈,地道東北人。 一個月前我還...
    沈念sama閱讀 45,636評論 2 355
  • 正文 我出身青樓段多,卻偏偏與公主長得像首量,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子进苍,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,925評論 2 344

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,528評論 25 707
  • afinalAfinal是一個android的ioc加缘,orm框架 https://github.com/yangf...
    passiontim閱讀 15,401評論 2 45
  • 沒有哪個人是生來就甘于平凡的拣宏。 許多人在小時候的夢想都是做科學(xué)家,做宇航員杠人,做明星勋乾,總而言之就是...
    棋舞弄清影閱讀 639評論 0 0
  • 在六月的晴空,兩萬五千英尺的高空上你能看到什么嗡善? 我看到了南儲辑莫,在半年前的谷歌衛(wèi)星地圖上,我看到了南儲罩引。 從液體運...
    Dr大心臟閱讀 416評論 0 0
  • 去年年底在微微書吧吧主大會上各吨,偶與吳律師相遇,這其中要感謝微微的吧主老李的引薦蜒程,幾個月后我們有了第一個合作項目绅你,就...
    阿渡SZ閱讀 770評論 0 1