Android含F(xiàn)lutter的項目無法編譯/窗口打開的問題記錄

遇到一個flutter項目無法正確構(gòu)建,生成必要文件(.android目錄等)、也無法從AS獨立窗口打開的問題

問題如圖:

build報錯

發(fā)生問題的前置操作:我掛了梯子,安裝了flutter SDK,flutter doctor提示無法連接github,還改過git全局代理,在gitconfig文件內(nèi)生成了http.proxy及https.proxy地址,未另外安裝jdk,as內(nèi)默認使用了自帶的jdk11

解決辦法:清除git內(nèi)配置的代理,配置flutter的環(huán)境變量(?用戶變量?即可),下載pub文件到flutter SDK同級目錄并配置對應(yīng)的環(huán)境變量

PUB_HOSTED_URL? ? ?https://pub.flutter-io.cn

FLUTTER_STORAGE_BASE_URL? ? ?https://storage.flutter-io.cn

PUB_CACHE? ?pub文件路徑

使用get命令在?flutter項目根目錄內(nèi)?運行,生成必要文件:

flutter pub get

可能存在下載緩慢的問題,可開關(guān)梯子/或者清理緩存再試

flutter clean # 清理項目緩存

flutter pub cache repair # 修復(fù)包緩存

成功效果如圖:


建議使用如下git命令拉取帶有flutter項目的代碼

git clone --recursive <主項目倉庫地址>

如果項目沒拉齊全也可以用命令重新拉

git submodule init # 初始化子模塊配置

git submodule update # 拉取子模塊內(nèi)容

git submodule update --init --recursive # 遞歸拉取所有子模塊

最后生成了必要文件后,重新build還遇到了flutter編譯報錯,指向了flutter生成文件內(nèi)的問題

FlutterPlugin.kt:744:21 Unresolved reference: filePermissions

FlutterPlugin.kt:745:25 Unresolved reference: user

FlutterPlugin.kt:746:29 Unresolved reference: read

FlutterPlugin.kt:747:29 Unresolved reference: write

此類問題是由于flutter版本和gradle/jdk版本不兼容導(dǎo)致無法編譯,我用了最新的flutter SDK 3.38,但gradle是7.5-bin,as內(nèi)部jdk用的11,電腦JAVA_HOME指向了as自帶的jdk21,要么升級項目內(nèi)的jdk和gradle,要么降低flutter版本

最后降低flutter版本到3.10才解決了編譯問題。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容