gpt4 book ai didi

java - Intellij 在编译期间看不到一些非公共(public) JDK 9 类

转载 作者:行者123 更新时间:2023-12-02 20:42:03 25 4
gpt4 key购买 nike

我有一个项目,之前使用 JDK 8.0,现在迁移到 JDK 9。该项目尚未模块化。

关闭对私有(private) JDK API 的访问的所有问题均已修复,我可以使用 Maven、1.8 语言级别和 JDK 9 从命令行构建项目。

Intellij Idea 根本没有突出显示任何问题,JDK 9 设置为项目 SDK,但如果我尝试在 Idea 本身内部构建项目 - 我会在 idea 控制台中遇到编译问题:

Information:javac 9 was used to compile java sources
Error:(5, 16) java: package sun.misc does not exist
Error:(22, 19) java: cannot find symbol
symbol: class Unsafe
location: class <...>.UnsafeAccessor

所以,该项目现在使用 JDK 9 在 CMD 中构建得很好,该错误没有多大意义,因为 sun.misc.Unsafe 在 JDK 9 中存在并公开,Idea 本身没有突出显示任何内容,所以它理解一切都存在。

什么可能会导致 Idea 内的项目构建出现问题?

有关 IDEA 构建的信息:

IntelliJ IDEA 2017.2.5

版本 #IU-172.4343.14,构建于 2017 年 9 月 26 日

JRE:1.8.0_152-release-915-b12 x86_64

JVM:JetBrains s.r.o 提供的 OpenJDK 64 位服务器 VM

Mac OS X 10.13

最佳答案

对我来说,解决方案是在 IDEA 的首选项、编译器、Java 编译器部分中禁用选项使用“--release”选项进行交叉编译”(Java 9 及更高版本)。 JDK 11、IDEA 2020.1。

关于java - Intellij 在编译期间看不到一些非公共(public) JDK 9 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46477989/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com