【Java学习笔记】 Information:javac 1.8.0_181 was used to compile java sources

导入新包然后运行的时候,报错”无效的发行版“、”javac 1.8.0_181 was used to compile java sources“

报错原因:因为Idea中已经配置了jdk 1.8.0_181的版本,但Idea有几个地方的jdk版本被默认为1.9版本的jdk。

解决办法:

1、file->project structure

2、检查以下两个地方jdk版本是否为1.8版本

显然下面的不是,那么店家右侧下拉键,选8-----,如下图

3、检查modules的jdk配置

4、检查下面SDKs的jdk

4、检查另一个地方的JDK‘

File->Setting->输入"java Compiler",查看右边的Module的 jdk

这样就OK啦啦啦啦啦

在使用 `javac 1.8.0_381` 编译 Java 源代码时,出现 `Errors occurred while compiling Java sources` 错误通常与编译器配置、源码兼容性或构建工具设置不当有关。以下是可能导致该错误的原因及其解决办法。 ### 常见原因及解决方案 #### 1. **Java 版本不匹配** - 如果项目的源码版本(source)高于目标版本(target),或者使用的 JDK 版本与项目要求的版本不一致,则会导致编译失败。 - **解决方法**:确保 `source` 和 `target` 配置均为 `1.8`,这可以在 IDE 或构建工具(如 Maven、Gradle)中进行调整。 在 IntelliJ IDEA 中: - 打开 **File > Project Structure > Modules**,确认模块的语言级别为 `8.0 - Lambdas, type annotations etc.`。 - 同时,在 **Settings (Preferences) > Build, Execution, Deployment > Compiler > Java Compiler** 中,将 `Target bytecode version` 设置为 `1.8`[^2]。 在 Maven 的 `pom.xml` 中添加以下插件配置: ```xml <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.8.1</version> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> </plugins> </build> ``` #### 2. **JDK 安装问题** - 使用的 JDK 可能损坏,或者环境变量配置错误(例如 `JAVA_HOME` 指向了 JRE 而非 JDK)。 - **解决方法**:重新安装 JDK,并检查 `JAVA_HOME` 是否指向正确的 JDK 安装目录。可以通过命令行运行 `javac -version` 来验证是否正确识别了 JDK。 #### 3. **IDE 缓存问题** - 在 IntelliJ IDEA 等 IDE 中,有时缓存文件可能导致编译异常。 - **解决方法**:尝试清除缓存并重新构建项目。 - 在 IDEA 中,选择 **File > Invalidate Caches / Restart**。 - 或者手动删除缓存文件夹(路径一般为 `~/.cache/JetBrains/IntelliJIdea<版本号>`)[^4]。 #### 4. **代码语法或注解处理错误** - 如果代码中存在不符合 Java 8 规范的语法,或某些注解处理器导致编译器崩溃,则会抛出 `internal java compiler error`。 - **解决方法**: - 检查最近修改的代码,尤其是涉及泛型、lambda 表达式或注解的部分。 - 尝试禁用 Lombok 或其他依赖注解处理器的库,以排查是否由其引发的问题。 #### 5. **内存不足或 JVM 参数限制** - 当项目较大或复杂度较高时,编译过程中可能因内存不足而失败。 - **解决方法**:增加 IDEA 或 `javac` 的 JVM 内存参数。 - 在 IDEA 的启动 VM 选项中添加 `-Xmx2048m` 或更高值。 - 对于命令行编译,可使用如下方式指定堆大小: ```bash javac -J-Xmx2048m YourClass.java ``` #### 6. **依赖冲突或版本不兼容** - 如果项目中引入的第三方库与当前 JDK 不兼容,也可能导致编译失败。 - **解决方法**:检查 `pom.xml` 或 `build.gradle` 文件中的依赖项,确保所有库都支持 Java 8。 --- ###
评论 23
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值