赞
踩
1、首先就是官网下载Java JDK8,拉到底Java8、Mac ,下载要你注册oracle,推荐共享账号
装好然后配置环境变量,打开命令终端
- #打开配置文件
- open .bash_profile
- #打不开的创建一下这个文件
- touch .bash_profile
- #修改完后记得运行这个保存文件的
- source .bash_profile
这样会打开一个记事本,在里面加上下面内容,里面的版本jdk1.8.0_301目录,根据自己安装的为准,可以到安装位置去看,Mac输入“ Command + Shift + . ”显示隐藏文件夹
- export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_301.jdk/Contents/Home
- export PATH=$JAVA_HOME/bin:$PATH:.
- export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.
改完再运行上面的保存文件命令,然后再检测"java -version"。ok !
2、因为还需要一些安卓环境和SDK,自己装较麻烦,所以选择直接安装一个Android Studio开发工具,装好会自带安卓环境。
装完配置安卓环境变量,同java环境变量一致,打开同一个bash_profile在里面再加上下面内容
- # Android ADB配置
- export ANDROID_HOME=/Users/你自己的账户目录/Library/Android/sdk
- export PATH=${PATH}:${ANDROID_HOME}/tools
- export PATH=${PATH}:${ANDROID_HOME}/platform-tools
- export PATH=$PATH:$ANDROID_HOME/build-tools/31.0.0
自己的账户目录记得改下,还有那个31.0.0目录,根据自己装的去更改,最后运行保存命令
输入 adb 检测安装成功没
3、去到自己的Angular cordova项目去看看能打包编译了没
- #全局安装cordova
- sudo npm install -g cordova
- # 添加安卓平台环境
- cordova platform add android
cd到项目终端运行
- # 运行
- cordova run android
- # 打包
- sudo ionic cordova build android
第一个问题
- Checking Java JDK and Android SDK versions
- ANDROID_SDK_ROOT=undefined (recommended setting)
- ANDROID_HOME=C:\Users\tanmay\AppData\Local\Android\sdk (DEPRECATED)
- Could not find an installed version of Gradle either in Android Studio,
- or on your system to install the gradle wrapper. Please include gradle
- in your path, or install Android Studio
- [ERROR] An error occurred while running subprocess cordova.
-
- cordova.cmd build android --release exited with exit code 1.
解决:主要是缺gradle环境,所以需要手动安装一下gradle。这个我是安装了homebrew,然后用命令安装的,有环境直接运行第二个安装命令
- # 装homebrew
- /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
- # 通过homebrew 装grade
- brew install gradle
第二个问题
解决: 问题是你有这些环境,但是你没有agree他的一些licenses协议,输入命令
- #切换到安卓安装目录下
- cd /Users/你的用户名/Library/Android/sdk
- cd tools
- cd bin
- # 执行认证, 一路y下去
- ./sdkmanager --licenses
最后 全完成,再重新试试
第三个问题
解决:
1、(此解决方案欠妥,我是用的后者解决的)去到项目目录的platforms/android/project.properties文件中,找上图报错内容中“com.android.support:support-xxx”错误的全给他注释掉,如我对应的
2、(推荐)在项目目录platform——android下build.gradle的allprojects节点中增加固定用27的具体版本,根据自己实际项目情况试试
- configurations.all {
- resolutionStrategy.force 'com.android.support:support-annotations:27.1.1'
- resolutionStrategy.force 'com.android.support:support-v4:27.1.1'
- }
第四个问题
目录/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home contains a valid JDK installation.找不到tool包,且称这个目录为“目录X”
解决:到mac终端,输入下面命令,得到两个路径,一个是目录X,拿另一个目录中bin或lib下的tool.jar文件,复制到目录X下的bin或lib文件夹中。咋复制?拿上面的地址,打开访达(Finder)按‘Command + Shift + G’ 输入上述地址
- #查看java路径
- /usr/libexec/java_home -V
第五个问题
解决:
- cd ~/Library/Android/sdk/build-tools/31.0.0 \
- && mv d8 dx \
- && cd lib \
- && mv d8.jar dx.jar
第六个问题
堆栈溢出,内存不足
解决:修改node打包内存限制这个博客很详细
总结两个方案:1)安装插件
- #安装
- npm install -g increase-memory-limit
- #执行
- increase-memory-limit
2)打开node_module/.bin/ng文件在顶部更改”#!/usr/bin/env node"如下
#!/usr/bin/env node --max_old_space_size=4096
另:因为每次编译巨久,所以在代码没改,只是改配置的情况下直接运行打包命令,不需要重新编译
sudo cordova build android --release
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。