IDEA--Err:(x,x)Java: -source 1.4中不支持注释(请使用 -source 5或则更改版本以启用注释)

本文介绍了解决IDEA中因版本不匹配导致的错误问题,通过调整编译器设置及项目模块配置,成功解决了“source1.4中不支持注释”的问题。

前言

最近接手了一个项目,为学校里面的体育测试做一个成绩记录的程序,所以就开始了对这方面的了解,但是之前接触的项目都是用VB.NET或者C#之类的,亦或者是B/S这方面的使用,但是这次需要用到Angular做前端,而且用WebStorm打开,后端用用IntelliJ IDEA编辑,第一次接触,所以不太了解。在这里总结一下。

内容

在导入之前的代码进入IDEA中的时候,需要配置IDEA,这个时候就出现了问题,在我导入代码之后,给我报出的错误如下图:
这里写图片描述
然后去网上搜索:“source 1.4中不支持注释”,内容五花八门,不过精益求精,寻求到准确答案是我们的追求,所以在众多的内容当中我总结出了如下的解决方法:
1.首先在File中找到Setting,点击进去之后,找到build下的Java Compiler,如下:
这里写图片描述
将里面1.4的地方都改成1.8,如下:
这里写图片描述
完成上面的操作之后,继续点击File选择Project Structure,选择Modules,下面四个文件里面的内容都在指定位置改成8 - Lambdas,type annotations etc.,如下:
这里写图片描述
这个时候应该会自动刷新,之前报出来的有关版本的问题就解决了。

总结

点滴积累,面对陌生的新鲜事物不用害怕,慢慢琢磨,然后就能总结出一套自己解决问题的方法。

end

谢谢您的阅读!

# # A fatal error has been detected by the Java Runtime Environment: # # EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x000000000000004e, pid=36860, tid=20036 # # JRE version: OpenJDK Runtime Environment JBR-11.0.11.9-1504.13-jcef (11.0.11+9) (build 11.0.11+9-b1504.13) # Java VM: OpenJDK 64-Bit Server VM JBR-11.0.11.9-1504.13-jcef (11.0.11+9-b1504.13, mixed mode, tiered, compressed oops, g1 gc, windows-amd64) # Problematic frame: # C 0x000000000000004e # # No core dump will be written. Minidumps are not enabled by default on client versions of Windows # # If you would like to submit a bug report, please visit: # https://bugreport.java.com/bugreport/crash.jsp # --------------- S U M M A R Y ------------ Command Line: exit -Xmx8192m -XX:ReservedCodeCacheSize=512m -Xms128m -XX:+UseG1GC -XX:SoftRefLRUPolicyMSPerMB=50 -XX:CICompilerCount=2 -XX:+HeapDumpOnOutOfMemoryError -XX:-OmitStackTraceInFastThrow -ea -Dsun.io.useCanonCaches=false -Djdk.http.auth.tunneling.disabledSchemes="" -Djdk.attach.allowAttachSelf=true -Djdk.module.illegalAccess.silent=true -Dkotlinx.coroutines.debug=off -Dsplash=true -javaagent:E:\\idea-2021\\FineAgent\\FineAgent.jar -Djb.vmOptionsFile=C:\Users\dell\AppData\Roaming\JetBrains\IntelliJIdea2021.2\idea64.exe.vmoptions -Djava.system.class.loader=com.intellij.util.lang.PathClassLoader -Didea.vendor.name=JetBrains -Didea.paths.selector=IntelliJIdea2021.2 -Didea.jre.check=true -Dide.native.launcher=true -XX:ErrorFile=C:\Users\dell\java_error_in_idea64_%p.log -XX:HeapDumpPath=C:\Users\dell\java_error_in_idea64.hprof Host: 12th Gen Intel(R) Core(TM) i5-12500T, 12 cores, 31G, Windows 10 , 64 bit Build 19041 (10.0.19041.5915) Time: Mon Sep 8 13:38:33 2025 中国标准时间 elapsed time: 17792.851945 seconds (0d 4h 56m 32s) --------------- T H R E A D --------------- Current thread (0x0000000119900800): JavaThread "JobScheduler FJ pool 12/11" daemon [_thread_in_Java, id=20036, stack(0x00000000de490000,0x00000000de590000)] Stack: [0x00000000de490000,0x00000000de590000], sp=0x00000000de58b3d8, free space=1004k Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code) C 0x000000000000004e siginfo: EXCEPTION_ACCESS_VIOLATION (0xc0000005), data execution prevention violation at address 0x000000000000004e Register to memory mapping: RIP=0x000000000000004e is an unknown value RAX=0x00000008017a2b90 is a pointer to class: com.intellij.psi.javadoc.PsiDocComment {0x00000008017a2b98} RBX=0x0000000639bab5f8 is an oop: com.intellij.psi.impl.source.PsiParameterImpl {0x0000000639bab5f8} - klass: 'com/intellij/psi/impl/source/PsiParameterImpl' RCX=0x0 is NULL RDX=0x000015bbc50e0dc7 is an unknown value RSP=0x00000000de58b3d8 is pointing into the stack for thread: 0x0000000119900800 RBP=0x000000060cea4310 is an oop: [Lcom.intellij.psi.PsiClass; {0x000000060cea4310} - klass: 'com/intellij/psi/PsiClass'[] - length: 0 RSI=0x00000008017fe340 is a pointer to class: com.intellij.psi.impl.source.PsiParameterImpl {0x00000008017fe348} RDI=3892612528 is a compressed pointer to object: [error occurred during error reporting (printing register info), id 0xc0000005, EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x00007ffe5ae7296d] Registers: RAX=0x00000008017a2b90, RBX=0x0000000639bab5f8, RCX=0x0000000000000000, RDX=0x000015bbc50e0dc7 RSP=0x00000000de58b3d8, RBP=0x000000060cea4310, RSI=0x00000008017fe340, RDI=0x00000000e8048db0 R8 =0x00000008017a2b90, R9 =0x000000007ffe1000, R10=0x0000000639bab5f8, R11=0x0000000800b3d7a0 R12=0x0000000000000000, R13=0x00000000c0bdc6bf, R14=0x0000000605ee35f8, R15=0x0000000119900800 RIP=0x000000000000004e, EFLAGS=0x0000000000010206 Top of Stack: (sp=0x00000000de58b3d8) 0x00000000de58b3d8: 00000008017a2b90 000000000000000a 0x00000000de58b3e8: 0000000019ba33a4 0000000677ffd978 0x00000000de58b3f8: 000000001cea9c04 0178dfd0028d5eb8 0x00000000de58b408: 000000074b9a2300 0000000617050120 0x00000000de58b418: 00000006435cead0 0000000802b10840 0x00000000de58b428: 0000000616b5a0b0 0000000609dc52b8 0x00000000de58b438: 0000000630a4d290 000000067af38668 0x00000000de58b448: 000000060cea4310 0000000802ab8440 0x00000000de58b458: 00000008004fcc40 0000000801ec6cf0 0x00000000de58b468: 0000000800310440 00000008028fb840 0x00000000de58b478: 000000080077f440 0000000800769900 0x00000000de58b488: 0000000800154e70 00000008000457f0 0x00000000de58b498: 0000000628e37888 000000060ce73a10 0x00000000de58b4a8: 0000000018ac1ee8 000000061428ff28 0x00000000de58b4b8: 0000000025260000 00000000ffffffc3 0x00000000de58b4c8: 000000074b99f0e8 0000000609dc52b8 Instructions: (pc=0x000000000000004e) 0xffffffffffffff4e: Stack slot to memory mapping: stack at sp + 0 slots: 0x00000008017a2b90 is a pointer to class: com.intellij.psi.javadoc.PsiDocComment {0x00000008017a2b98} stack at sp + 1 slots: 0x000000000000000a is an unknown value stack at sp + 2 slots: 0x0000000019ba33a4 is at entry_point+292 in (nmethod*)0x0000000019ba3010 stack at sp + 3 slots: 0x0000000677ffd978 is an oop: com.intellij.util.CachedValueBase$Data {0x0000000677ffd978} - klass: 'com/intellij/util/CachedValueBase$Data' stack at sp + 4 slots: 0x000000001cea9c04 is at entry_point+772 in (nmethod*)0x000000001cea9690 stack at sp + 5 slots: 0x0178dfd0028d5eb8 is an unknown value stack at sp + 6 slots: 0x000000074b9a2300 is an oop: com.intellij.psi.impl.source.PsiJavaFileBaseImpl$1 {0x000000074b9a2300} - klass: 'com/intellij/psi/impl/source/PsiJavaFileBaseImpl$1' stack at sp + 7 slots: 0x0000000617050120 is an oop: com.intellij.psi.ResolveState {0x0000000617050120} - klass: 'com/intellij/psi/ResolveState' com.intellij.diagnostic.JBRCrash
最新发布
09-09
<think> 嗯,用户遇到了一个相当棘手的Java运行时错误:EXCEPTION_ACCESS_VIOLATION (0xc0000005),发生在OpenJDK 11.0.11和IntelliJ IDEA 2021.2的组合环境中。这个错误通常意味着JVM试图访问非法内存地址,属于严重的系统级错误。 用户明显是Java开发者,而且能准确提供环境版本(OpenJDK 11.0.11 + IDEA 2021.2),说明ta有技术基础。但这类错误往往令人沮丧,因为它可能涉及多个层面:JVM本身、本地库、硬件甚至IDE。用户此刻最需要的是系统化的排查方案,而不是泛泛而谈。 上次对话中系统强调过技术问题要结构化呈现,所以考虑把解决方案拆解成层次:从最可能的内存问题开始(毕竟Java最常遇内存故障),到JVM参数、驱动兼容性,最后到环境隔离测试。特别要注意的是: - 必须优先验证原生demo是否重现,这能锁定问题是JDK还是项目本身 - 硬件加速和显卡驱动问题常被忽略,但实际是GUI崩溃的常见诱因 - 用户用IDEA,所以需要单独说明IDE特定设置(比如禁用索引/插件) 用户可能已经尝试过重启等基础操作,因此直接跳过那些无效建议。另外考虑到这是生产环境问题,特定加入“降级OpenJ9”这种企业级方案——虽然小众,但某些场景能救命。 最后生成的三个问题都经过筛选:崩溃日志分析是必需品,AOT编译和容器化则是进阶方向。特别是容器化建议,既能隔离环境问题又符合现代部署趋势,用户如果是运维开发者会需要这个。 (突然意识到)用户没提操作系统,但Windows遇到这个错误的概率远高于Linux,所以重点写了DirectX/DLL方案。如果是Mac用户,可能需要额外补充CoreGraphics相关的诊断,暂时先保留吧。 </think> EXCEPTION_ACCESS_VIOLATION (0xc0000005) 是严重的系统级错误,通常由 JVM 尝试访问非法内存地址引起。以下是根据 OpenJDK 11.0.11 和 IntelliJ IDEA 2021.2 环境的系统化解决方案: --- ### 一、核心排查步骤 1. **验证基础环境** - 检查系统位数匹配:确认安装的 **OpenJDK 11 (x64)** 与操作系统位数一致(32位程序无法加载64位DLL) - 执行命令验证: ```bash java -version # 确认输出包含 "64-Bit Server VM" ``` 2. **禁用冲突的JVM参数** 在 `IDEA_VM_OPTIONS` (Help > Edit Custom VM Options)注释或删除以下参数测试: ```ini -XX:+UseCompressedOops -XX:+UseG1GC -Xverify:none ``` 3. **更新关键组件** | 组件 | 检查项 | |---------------------|-----------------------------------------------------------------------| | **显卡驱动** | 升级至最新稳定版(NVIDIA/AMD/Intel官网下载) | | **Visual C++** | 安装 [Microsoft Visual C++ Redistributable 2015-2022](https://docs.microsoft.com/cpp/windows/latest-supported-vc-redist) | | **OpenJDK** | 升级至 **11.0.12+**(修复了[JDK-8253790](https://bugs.openjdk.org/browse/JDK-8253790)) | --- ### 二、IDE专项修复 1. **禁用硬件加速渲染** 在 `idea64.exe.vmoptions` 中添加: ```ini -Dsun.java2d.d3d=false -Dsun.java2d.opengl=false -Dide.no.platform.update=true ``` 2. **清理IDEA缓存** ```bash File > Invalidate Caches / Restart > "Invalidate and Restart" ``` 3. **关闭冲突插件** - 暂时禁用:**JNI Debugger**, **GraalVM**, **Native Debugging Support** --- ### 三、高级解决方案 1. **诊断内存损坏** 添加JVM崩溃日志参数: ```ini -XX:+ErrorFileToStderr -XX:+CreateCoredumpOnCrash ``` 日志路径:`C:\Users\<user>\AppData\Local\Temp\hs_err_pid<pid>.log` 2. **替换JVM运行时** 尝试切换到 **Eclipse Temurin 11** 或 **Zulu 11**(某些OpenJDK构建可能存在本地库问题): ```bash sdk install java 11.0.22-tem ``` 3. **检查本地库冲突** 使用 **Dependency Walker** 分析项目依赖的DLL: ```bash # 检查是否有重复或损坏的DLL ldd /path/to/your-jni-library.so # Linux dumpbin /DEPENDENTS your.dll # Windows ``` --- ### 四、硬件/系统层修复 1. **内存诊断** - Windows:运行 `mdsched.exe` 执行内存检测 - Linux:使用 `memtester 4G 10` 2. **关闭超线程/超频** - BIOS中禁用 **Intel Hyper-Threading** 或 **AMD SMT** - 恢复CPU/内存默认频率 --- ### 五、替代方案 若问题仅在IDEA中出现: ```bash # 使用命令行编译运行测试 javac Main.java java -Xmx512m -XX:+UseSerialGC Main ``` 若命令行正常,表明问题与IDE集成环境相关[^1]。 --- **典型崩溃日志分析** 在 `hs_err_pid.log` 中关注以下片段: ``` # Problematic frame: # C [ntdll.dll+0x3c890] # Failed to write core dump. Minidumps are not enabled ``` 此类痕迹指向系统DLL,需优先更新Windows或回退驱动[^2]。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值