w***@yeah.net
w***@yeah.net
  • 发布:2022-06-02 14:55
  • 更新:2024-11-04 12:25
  • 阅读:4588

针对m1 mac 用户优化hbuilder的方法,替换不协调的图标以及更换arm版本node的全过程

分类:HBuilderX

新工作单位需要维护uniapp的遗留项目,不得不下载Hbuilder X,这篇文章专注解决和本人一样强迫症的用户,
图片不知道怎么插入,附件里有前后的对比图,一定要记得备份,防止操作失败或者不适用自己项目可以回滚过来

备份Hbuilder X,防止操作失败影响搬砖

  • 进入应用程序目录对Hbuilder X 压缩,如操作过程中出现问题,可以删除APP并直接解压

替换图标

  • 打开网站 https://macosicons.com/how-to#/,搜索HBuilder,找到喜欢的图标下载下来
  • 打开 应用程序目录,点击选中Hbuilder X, 然后按下 command + i 打开简介窗口
  • 拖动下载的图标到 简介窗口的图标位置,重启Hbuilder 新图标就换好了

修改Hbuilder 内置node 为 本机Arm版本

在终端执行 where node,会输出本地node 所在位置
例如:/Users/xx/.nvm/versions/node/v16.14.2/bin/node,
在终端执行 open /Users/xx/.nvm/versions/node/v16.14.2/bin打开node所在目录,
以及 open /Applications/HBuilderX.app/Contents/HBuilderX/plugins/node,打开Hbuilder内置node目录,
接下去复制本地的node到HBuilderX的node目录中,记住是复制!!不要直接拖动过去

这时候项目是运行不了的,因为Hbuilder内置了node-sass,并不匹配Arm版node,
终端会报错,如下内容,不要根据提示去操作,不会有效果的

[0;31m--> LibSass 的二进制文件(/Applications/HBuilderX.app/Contents/HBuilderX/plugins/compile-node-sass/node_modules/node-sass-china/vendor/darwin-arm64-93/binding.node)缺失,请执行下面3条命令下载对应版本的二进制文件:(有可能引发此错误的原因是 Node 版本变更)   
14:39:41.361   mkdir -p /Applications/HBuilderX.app/Contents/HBuilderX/plugins/compile-node-sass/node_modules/node-sass-china/vendor/darwin-arm64-93  
14:39:41.363   cd /Applications/HBuilderX.app/Contents/HBuilderX/plugins/compile-node-sass/node_modules/node-sass-china/vendor/darwin-arm64-93  
14:39:41.365   curl -o binding.node http://cdn.npm.taobao.org/dist/node-sass/v4.7.2/darwin-arm64-93_binding.node

替换node-sass 为 dart-sass

  • 首先 终端执行 cd /Applications/HBuilderX.app/Contents/HBuilderX/plugins,打开plugins目录
  • 执行rm -rf compile-node-sass 删除node-sass目录
  • 执行yarn add sass,
  • 重启编辑器

解决真机调试问题

一直没有看到用到这个功能,所以没发现,看到评论有问题,记录一下解决的过程,有其他问题可以也可以用这个方法

如发现某些功能异常,打开 hbuilder 帮助->查看运行日志,清空日志,重新操作未正常启动的功能。
查看日志,一般都是缺少一些模块的报错,如缺少在出错的插件目录下安装即可

  • 在 /Applications/HBuilderX.app/Contents/HBuilderX/plugins/launcher 目录下安装 执行 yarn add archiver
  • 清空plugins/launcher/tools/adbs 目录,下载arm版本adb拖动进去 或 使用brew安装adb,在hbuilder偏好设置- 运行配置- adb路径中修改 (但在活动监视器中adb进程还是会显示intel,不知为何)
  • 重启编辑器
1 关注 分享
鸡排饭加个蛋

要回复文章请先登录注册

3***@qq.com

3***@qq.com

与其赶工哪些新功能,不如先把你们自己的编辑做好吧,难用的一逼,堪比当年的 eclipse,说白了就是摆
2024-11-04 12:25
AaronTT

AaronTT

4年了。。
2024-09-29 15:40
8***@qq.com

8***@qq.com

yarn add archiver 安装好了,但是在hbuilderx菜单里运行到手机或模拟器按钮没有任何反应,换成x86的node就没有问题
2023-09-20 12:57
8***@qq.com

8***@qq.com

在 /Applications/HBuilderX.app/Contents/HBuilderX/plugins/launcher 目录下安装 执行 yarn add archiver

这个操作报错
gyp ERR! System Darwin 22.3.0
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /Applications/HBuilderX.app/Contents/HBuilderX/plugins/launcher/node_modules/usb-detection
gyp ERR! node -v v13.14.0
gyp ERR! node-gyp -v v5.1.0
gyp ERR! not ok
2023-09-19 23:40
硕菊叶

硕菊叶

回复 硕菊叶 :
如果本机安装的是X86/ARM版本的NODEJS,就不要用目录里面的NODE,这样hbuilderx会默认调用intel版本,可以去Node下载16.16.0版本的arm版,node文件77mb那个https://nodejs.org/dist/v16.16.0/node-v16.16.0-darwin-arm64.tar.gz 下载后解压在bin目录找到node复制覆盖hbuilderx那个node(记得备份),这样就可以调用arm的node了,实测冷启动,冷编译,arm版比intel版快一倍多,arm版20秒,intel版46秒。
2023-06-20 17:20
00后霸道总裁

00后霸道总裁

2023-06-13 10:36:44
还没适配苹果芯片
2023-06-13 10:36
硕菊叶

硕菊叶

多谢,已经被x86版的node编译速度给折磨的烦了。。现在机器上就只有hbuilderx还是Intel版的,真的服了。。
2022-12-19 17:57
NSK

NSK

回复 8***@qq.com :
npm install setimmediate
npm install pkao
npm install pako
npm install base64-js
npm install usb-detection
npm install xml-manifest-decoder

重新安装这几个包就行了,这几个包依赖的二进制文件是x86的,重新安装换成arm的就可以了
2022-10-23 12:19
8***@qq.com

8***@qq.com

替换完,运行到模拟器有问题了,又退回来了
2022-09-20 18:46
8***@qq.com

8***@qq.com

nice, 可以了,不过都两年了还没适配,真的有点说不过去了
2022-09-20 10:40