Caused by: org.gradle.process.internal.ExecException: Process 'command '/Users/Macx/Documents/flutter/bin/flutter'' finished with non-zero exit value 1
at org.gradle.process.internal.DefaultExecHandle$ExecResultImpl.assertNormalExitValue(DefaultExecHandle.java:409)
at org.gradle.process.internal.DefaultExecAction.execute(DefaultExecAction.java:38)
at org.gradle.process.internal.DefaultExecActionFactory.exec(DefaultExecActionFactory.java:145)
at org.gradle.api.internal.project.DefaultProject.exec(DefaultProject.java:1117)
at org.gradle.api.internal.project.DefaultProject.exec(DefaultProject.java:1112)
at org.gradle.api.Project$exec$6.call(Unknown Source)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:115)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:127)
at BaseFlutterTask.buildBundle(/Users/Macx/Documents/flutter/packages/flutter_tools/gradle/flutter.gradle:904)
at BaseFlutterTask$buildBundle.callCurrent(Unknown Source)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:51)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:156)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:160)
at FlutterTask.build(/Users/Macx/Documents/flutter/packages/flutter_tools/gradle/flutter.gradle:1025)
編譯錯誤有時候不是代碼問題杆融,可能是編譯器的問題。
在一頓摸索后第一次解決這個方法是:
1.刪掉pubspec.lock
2.重新pub get
3.在flutter項目里打開Android工程
4.build signed Apk
打包成功唆樊。
但還沒完宛琅,后來又遇到了,再一次按照上面的方法來打包逗旁,失敽俦佟!有毒啊片效。怕的不是出現(xiàn)錯誤红伦,而是出現(xiàn)錯誤后線索無法跟蹤,咱沒能找到錯誤原因淀衣,然后猜想-驗證-再猜想-再驗證... 這就是沒能充分理解整個編譯過程的苦吧昙读。OK,一頓操作猛如虎舌缤,在上述方法中加入了一條3.Flutter運行一下 變成這樣:
1.刪掉pubspec.lock
2.重新pub get
3.Flutter運行一下
4.在flutter項目里打開Android工程
5.build signed Apk
打包成功箕戳!謝天謝地,寫代碼居然要靠祈禱來盼成功...
好日子不長国撵,沒錯陵吸,這次我又遇到了,上面以為靠譜的方法執(zhí)行完后介牙,依然失敗壮虫,天吶。再來!老子跟你干到底囚似!猜想-驗證 走起剩拢!很幸運,確實又給我發(fā)糖果了饶唤,這次又增加了一條:
0.先在一個新建的項目按照以上步驟編譯一下徐伐,新項目能成功的話再往下走。
1.刪掉pubspec.lock
2.重新pub get
3.Flutter運行一下
4.在flutter項目里打開Android工程
5.build signed Apk
成功募狂!F**k办素。這也太迷了吧!總感覺這事還沒完祸穷,先做個記錄吧性穿,問題的根源是什么我也不清楚。
---------------------------------------分割線--------------------------------------------------
我找到問題的根源了雷滚,像這類問題(錯誤信息里看不到具體錯誤)需曾,可以在Terminal里邊打如下命令
./gradlew compileDebugSource --stacktrace -info
我得到的信息是i18n.dart這個文件的變量找不到,但具體為什么我也說不清楚祈远,應(yīng)該是編譯器的bug吧呆万,這個文件是自動生成的。替換掉我引用的變量就編譯成功了