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 然后再次输入上述命令
相关推荐
Lhappy嘻嘻2 小时前
Java IO|File 文件操作 + 字节流 / 字符流完整笔记 + 递归删除文件实战
java·笔记·php
伊玛目的门徒3 小时前
试用leetcode之典中典 二数之和问题
java·算法·leetcode
懒鸟一枚6 小时前
深入理解 Linux 内存、Swap 交换分区与分页机制的关系
java·linux·数据库
我命由我123457 小时前
执行 Gradle 指令报错,无法将“grep”项识别为 cmdlet、函数、脚本文件或可运行程序的名称
android·java·java-ee·android studio·android jetpack·android-studio·android runtime
考虑考虑7 小时前
Sentinel安装
java·后端·微服务
凤凰院凶涛QAQ9 小时前
《Java版数据结构 & 集合类剖析》栈与队列:“push/pop 是栈的灵魂,offer/poll 是队列的骨架——四组 API,两种人生”
java·开发语言·数据结构
掘金_答案10 小时前
上线那天,一个 ConcurrentHashMap 差点送走我的 AI 客服——3 天排查 JVM 血泪史
java·后端·架构
猿与禅10 小时前
CosId 分布式 ID 生成器完全教程:从架构原理到生产落地
java·shardingsphere·雪花算法·分布式id·高性能·cosid·号段模式
MindUp10 小时前
企业网盘权限模型解析:多层级访问控制与审计能力选型指南
java·linux·运维
NG47710 小时前
【软件设计与体系结构】-策略设计模式
java·设计模式·软件工程