首页 > 其他分享 >assembleDebug太慢的问题调查以及其他

assembleDebug太慢的问题调查以及其他

时间:2023-09-18 13:23:41浏览次数:27  
标签:assembleDebug 11 java 调查 gradle build android flutter 太慢

Preface

最近在做flutter上的音频和视频方面的探索。
需要用到一些视屏区域截取,视屏导出成序列图等等。
这是昨天晚上到今天早上解决的一些问题的汇总,可能先后顺序之类的会记错;
此文目的用于提供一些解决问题的思路,聊以备忘,以使不忘,后事之师。

Contents

设备问题

个人设备过老或者缺失

mac pro early 2015

xcode不能更新,所以最新的flutter项目没法用 macos 来debug,且硬件所限,运行 idea 都发出拖拉机的声音,所以 android emulator也是卡成狗

2013年的组装电脑

windows电脑都这逼样,超过一定年限,哪怕资源管理器里面内存和cpu占用不高,按下 win+e 都能反应半天,最后还是选了在windows上通过android studiox86 emulator 来排除一些环境问题

唯一的安卓设备 mi pad

由于意气之下弄坏了

环境问题

使用的部分flutter包只支持 iOS, android, macOS

Running Gradle task 'assembleDebug'

使用国内源加速maven与gradle

老是卡这里,开始以为是 maven 没有使用国内源加速的原因,
先后在以下文件中替换了 gradle 的国内源

  • {flutter_home}/package/flutter_tools/gradle/flutter.gradle
  • /app/build.gradle
    然而没什么鸟用。

直接使用命令行来进行gradle编译

然后根据网上提示,进入到 android 目录下,先后运行:

flutter clean
./gradlew clean build

这个时候就可以看到 gradle 真正的报错信息了.

FAILURE: Build failed with an exception.

Where:
Build file 'F:\workspace\app\android\app\build.gradle' line: 24

What went wrong:
A problem occurred evaluating project ':app'.

Failed to apply plugin 'com.android.internal.application'.
Android Gradle plugin requires Java 11 to run. You are currently using Java 1.8.
Your current JDK is located in F:\Program Files\Java\jdk1.8.0_60\jre
You can try some of the following options:

  • changing the IDE settings.
  • changing the JAVA_HOME environment variable.
  • changing org.gradle.java.home in gradle.properties.

java版本问题

好嘛,java版本问题,去oracle下载一个不就得了,于是下了个java 20。
多年未更新过java的我,渠道oracle下载java,居然要登陆!!!!!
更新完成,继续运行:

.\gradlew --status

1个idle的,6个 stopped,没有问题,继续:

./gradlew clean build

发现java 20也不行!友邦惊诧!!!
好嘛,写在java 20,我就给你装个java 11。
安装完java 11,尼玛,明明系统环境变量 \(JAVA_HOME\) 设置的就是新安装的 java 11的jdk根目录,缺还是去之前安装的java 20的目录下去找了!!!
为也是服了,在 gradlew.bat 中也打了日志,就是莫名其妙的在java 11的jdk目录下的bin中找不到java 执行文件!!!
网上说,java 20卸载不干净会有残留文件无法删除,导致此问题。
确认了一下,确实在之前的java 20目录下有残留文件,立即 shift + DEL, 妈蛋,文件使用中。
折腾之下还是重启电脑之后删除掉了。
此事运行运行 clean, 会有什么有趣的事情发生呢?

javaHome invalid问题

The supplied javaHome seems to be invalid.
于是,修改了 gradle.property:

org.gradle.java.home=f:\\Programe Files\\Java\\jdk-11

此时,项目的源码可以编译通过,但是

Unsuppoted class file major version 64

  • 首先,在build.gradle中,将最小版本调整为插件需要的最小版本
  • 其次,此插件只能运行与移动平台与mac上,可以使用模拟器debug一下

事实证明,模拟器中可以运行起来,无报错。

至此,以及可以完美的运行起来了,可以往项目中加屎了。

资源服务器的问题

app需要用到一些资源,于是打算在wsl装的ubuntu上搞一个http服务器专门用来提供资源管理。
用golang/gin写了一个简单的http静态资源服务器,打包linux:

set GOOS=linux
set GOARCH=amd64
go build

好了,在 ubuntu 上执行 explore.exe . 之后,将刚才生成的可执行文件拉进来, 直接运行,完美;
使用 nohup 运行,卡在了命令行,于是,想起来我这台2013年的拖拉机确实无法承受如此重任,于是想到了上周从垃圾堆里翻出来的树莓派 3 B+;
重新将执行文件上传到树莓派:

scp /Users/duke/Downloads/reserver [email protected]:/home/pi/res

然后

chmod 777 ./reserver

然后运行

cannot execute binary file: Exec format error
难道是我的树莓派是32bit的?不应该啊,之前确认过是64bit的。
然后调查了一下,突然想起树莓派是arm架构的,于是

set GOOS=linux
set GOARCH=arm64
set CGO_ENABLED=0
go build -o reserver.out ./release/raspberry/reserver.out 

然后,将此文件上传至树莓派,完美运行.

Conclusion

  • 目前 flutter 只支持 java 11,官网下载java要登陆,国内其实有免登陆的下载源;
  • 无法忍受android项目 assembleDebug 太慢,可以自己手动调试一下;
  • gradle最后debug插件遇到问题很有可能其实是本地平台的问题,

标签:assembleDebug,11,java,调查,gradle,build,android,flutter,太慢
From: https://www.cnblogs.com/adoontheway/p/17709707.html

相关文章

  • 9-14|npm install --global windows-build-tools 安装太慢了,能够指定国内源
    如果你在中国,并且发现`npm`的包下载速度很慢,那么很可能是因为默认的npm源在国外。为了提高下载速度,你可以使用淘宝的npm镜像。以下是使用淘宝npm镜像的方法:1.**临时使用** ``` npminstall--globalwindows-build-tools--registry=https://registry.npm.taobao.org......
  • 【9月摸鱼计划】mos开关,下降沿有尖峰,是不是寄生电容放电太慢了,加个反向肖特基会不会有
    MOS开关的下降沿出现尖峰,可能是由于寄生电容放电过慢或其他电路因素的影响。添加反向肖特基二极管可能会对改善尖峰有所作用,但具体效果需要考虑以下因素:寄生电容:寄生电容是电路中不可避免的部分,它们会在电压变化时进行充电和放电。如果寄生电容较大,放电时间会变长,从而导致尖峰的出......
  • 会员权益-需求调查:需要什么样的云服务器优惠
    目前园子的会员权益少的可怜,但我们的目标是成为非常超值的会员。一边我们在努力开发产品增值功能,一边我们在寻找合作厂商,希望通过厂商的特殊优惠带给园子会员特别的实惠。现在是会员救园,但我们的目标是园惠会员。上周有一家云厂商专门赶到杭州云栖小镇与园子商谈合作,当知道我们正......
  • GitHub太慢
    1.修改本地hosts文件windows系统的hosts文件的位置如下:C:\Windows\System32\drivers\etc\hostsmac/linux系统的hosts文件的位置如下:/etc/hosts2.增加http://github.global.ssl.fastly.net和http://github.com的映射获取Github相关网站的ip访问https://www.ipaddress.com......
  • 陶瓷红外线加热器行业市场调查趋势分析报告2023-2029
    2023-2029全球陶瓷红外线加热器行业调研及趋势分析报告2022年全球陶瓷红外线加热器市场规模约亿元,2018-2022年年复合增长率CAGR约为%,预计未来将持续保持平稳增长的态势,到2029年市场规模将接近亿元,未来六年CAGR为%。从核心市场看,中国陶瓷红外线加热器市场占据全球约%的市场份......
  • 智能存储控制器行业市场调查趋势分析报告2023-2029
    2023-2029全球智能存储控制器行业调研及趋势分析报告2022年全球智能存储控制器市场规模约亿元,2018-2022年年复合增长率CAGR约为%,预计未来将持续保持平稳增长的态势,到2029年市场规模将接近亿元,未来六年CAGR为%。从核心市场看,中国智能存储控制器市场占据全球约%的市场份额,为全......
  • 便携式电源轨探头行业市场调查趋势分析报告2023-2029
    2023-2029全球便携式电源轨探头行业调研及趋势分析报告2022年全球便携式电源轨探头市场规模约亿元,2018-2022年年复合增长率CAGR约为%,预计未来将持续保持平稳增长的态势,到2029年市场规模将接近亿元,未来六年CAGR为%。从核心市场看,中国便携式电源轨探头市场占据全球约%的市场份......
  • 粉状聚合物分散剂行业市场调查趋势分析报告2023-2029
    2023-2029全球粉状聚合物分散剂行业调研及趋势分析报告2022年全球粉状聚合物分散剂市场规模约亿元,2018-2022年年复合增长率CAGR约为%,预计未来将持续保持平稳增长的态势,到2029年市场规模将接近亿元,未来六年CAGR为%。从核心市场看,中国粉状聚合物分散剂市场占据全球约%的市场份......
  • Stack Overflow开发者调查发布:AI将如何协助DevOps
    StackOverflow发布了开创性的2023年度开发人员调查报告[1]。报告对90,000多名开发人员进行了调查,全面展示了当前软件开发人员的体验。接下来,本文将重点介绍几项重要发现,即重要编程语言和工具偏好、人工智能在开发工作流程中的应用以及这些趋势对DevOps领域可能意味着什么。......
  • Stack Overflow开发者调查发布:AI将如何协助DevOps
    StackOverflow发布了开创性的2023年度开发人员调查报告[1]。报告对90,000多名开发人员进行了调查,全面展示了当前软件开发人员的体验。接下来,本文将重点介绍几项重要发现,即重要编程语言和工具偏好、人工智能在开发工作流程中的应用以及这些趋势对DevOps领域可能意味着什么。......