vim 配置环境变量与 JDK 编译器异常

vim 配置环境变量

  1. 使用 vim 打开系统中的配置信息(不存在将会创建): vim ~/.bash_profile

  2. 以配置两个版本 JDK 为例(前提是已安装 JDK),使用上述命令打开配置信息:

  3. 输入法调成英文,输入 i,进入到编辑模式
    正确输入配置信息,输入完毕后,点击 esc 按键,退出编辑

  4. 输入以下指令,退出编辑配置信息(:是必须的) :wq 保存后退出vi,若为 :wq! 则为强制储存后退出(常用)

    :w 保存但不退出(常用)

    :w! 若文件属性为『只读』时,强制写入该档案

    :q 离开 vi (常用)

    :q! 若曾修改过档案,又不想储存,使用 ! 为强制离开不储存档案。

    :e! 将档案还原到最原始的状态

  5. 执行 source ~/.bash_profile ,让配置信息生效

  6. 输入 java -version,检查 jdk 版本(默认 1.8)

  7. 输入 jdk11,再次输入 java -version,检查 jdk 版本(返回 11),这样就可很方便的切换 jdk 版本配置信息示例

    JAVA_HOME_8=/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home

    JAVA_HOME_11=/Library/Java/JavaVirtualMachines/jdk-11.0.2.jdk/Contents/Home

    JRE_HOME=$JAVA_HOME/jre

    PATH=PATH:JAVA_HOME/bin

    CLASSPATH=.:JAVA_HOME/lib/dt.jar:JAVA_HOME/lib/tools.jar

    export JAVA_HOME=$JAVA_HOME_8

    export JRE_HOME

    export PATH

    export CLASSPATH

    alias jdk8="export JAVA_HOME=$JAVA_HOME_8"

    alias jdk11="export JAVA_HOME=$JAVA_HOME_11"

JAVA 编译器异常

  1. Android 项目编译失败,提示编译器异常,见图
  2. 网上给的方案一般是要求升级 JDK 版本至 JDK11,同时 Android Studio 中配置
  3. module 的 build.gradle 配置
  4. 编译运行提示程序包不存在或找不到符号
  5. 最终解决方案
    使用 JDK 11 的同时,gradle 升级使用版本 7.0.2,AGP 升级使用 7.0.2,module 的 compileSdkVersion、targetSdkVersion 均升级使用新版本 33,buildToolsVersion 升级使用 30.0.3
    再次编译,正常运行
  6. 如果控制台中输入 ./gradlew assembleDebug 指令,依然提示上述错误,首先输入 java -version,检查 jdk 版本,若 jdk 版本不满足,切换至 jdk11 然后再次输入上述命令
相关推荐
AI你一生一世7 小时前
不止于时序存储:DolphinDB 如何成为 AI 时代的工业智能底座
java·人工智能·struts·时序数据库·工业智能·dolphindb·ai基础设施
云-缩影7 小时前
拆解 AI 图像生成应用的后端架构:ECS、OSS 和大模型 API 怎么配合
java·spring boot·后端
瑞克-桑切斯8 小时前
7、MySQL 慢查询排查与优化实战指南
java·服务器·数据库
海的透彻12 小时前
dockerfile如何快速构建容器(java服务)
java·开发语言
code2cat12 小时前
Java工具篇之Gradle:用任务图组织构建与交付
java·开发语言·单元测试·gradle
后台模板学习13 小时前
大模型 Prompt 工程在电商订单系统中的踩坑记录
java·python·prompt
w_zero_one13 小时前
算法--构造
java·数据结构·算法
SL_staff13 小时前
制造业订单交付崩盘?用四层协同框架重建交付可信度(技术实践)
java·产品·全栈
SL_staff14 小时前
打破风控迭代死循环:用决策编排重构业务与技术协作链路
java·产品·全栈
Mikko715 小时前
Redis 连接数满了服务端有错误信息吗?连接数不增加却命令超时?6.2 实测连接池、超时与大 key 怎么判定
java·spring boot·redis·后端