当前位置: 首页 > 知识库问答 >
问题:

将openjdk更新到11会使intelij丢失对类的所有引用

澹台浩广
2023-03-14

免责声明:

然而,标记它的人,没有考虑到我跟随重复的帖子的回答没有排序我的问题。此外,这个问题涉及到从Java8到Java9的转移,当时Java9处于测试版。

在我的例子中,我正在从Java8升级到11(oracle,而不是openjdk),后者是Java的当前稳定版本。此外,我运行的是InteliJ的第二个最新版本(2018.3),最新版本是2018.3.1。

最后,我面临的问题不仅仅是某些包的zip头是空的,而是对同一个源根中的类的引用无法访问。

实际问题:

当我这样做时,IntelliJ的所有引用(同一个源根文件夹中的类引用)都丢失了。即使是包声明在使用更高版本的JDK时也是无效的。当我在1.8上运行它时,它运行得很好(请参阅第一个图像以获得成功的重建)。

在更改为openjdk-11后,我收到以下错误:

正如您在上图中看到的,ListExample位于正确的包/源根中,但似乎无法访问(该文件确实存在!)。

似乎没有什么允许我编译这个项目。

编辑:

最新截图(06/12/18)与JDK 11。

使用JDK 8编译成功截图:

共有1个答案

璩俊雅
2023-03-14

IntelliJ显示它无法加载整个项目:

16:50加载项目时出错:无法加载2个模块详细信息...

此外,您还打破了依赖关系:

您很可能需要解决这类问题并进行项目重建(顶部菜单中的build>building project)。当前您正在运行一个部分导入的项目,很难判断其根本原因是什么。

 类似资料:
  • 我为序列分类(二进制)创建了一个LSTM网络,其中每个样本有25个时间步和4个特征。以下是我的keras网络拓扑: 上面,密集层之后的激活层使用softmax功能。我使用二进制交叉熵作为损失函数,Adam作为优化器来编译keras模型。使用batch_size=256、shuffle=True和validation_split=0.05对模型进行训练,以下是训练日志: 到目前为止,我还尝试使用了r

  • 我有一个典型的问题:将JavaFX11与OpenJDK11和Eclipse IDE一起使用。 我有OpenJDK 11.0.2 然后,我将来自Eclipse IDE中的文件包含到一个库包中。

  • 问题内容: 对于Linux发行版,有一个openjdk-8-jre软件包,仅用于安装openjdk 8的jre部分。最新的Windows openjdk 11是否熟悉?可以从http://jdk.java.net/11/下载最新的openjdk版本,但是我找不到仅下载jre部分的方法。 问题答案: 我们不随JDK 11提供单独的JRE下载。相反,您可以使用jlink创建仅包含应用程序所需模块集的自

  • 我回来时问了同样的问题,但这次有更多的记录。我有一个包含许多servlet和JSP的web应用程序。应用程序有一个登录选项。在登录servlet中,我启动一个新会话,在会话中放置一些信息后,我转到一个JSP。 登录。java相关代码: 转发后,我得到一个名为Insert.jsp的Jsp页面,在那里我得到会话属性。 插入jsp相关代码: 在这之后,我有一个表单将我引导到servlet Adaugar

  • 问题内容: 我在Ubuntu上使用Eclipse进行C 开发。从Ubuntu 11.04更新到Ubuntu 11.10之后,Eclipse indexer不再能够找到我的C / C 系统头文件,并且使我烦恼,在整个​​编辑器视图中都填充了小错误符号,每行都有一个它不能识别的或符号。 下载并解压缩全新的Eclipse CDT软件包将无法解决问题。创建Hello World示例项目也不会解决该问题。我

  • 问题内容: 我正在使用SQL数据库,我有一列名为“价格”。创建数据库后,将“价格”列设置为“我”,需要将其类型更改为不丢失数据库中的数据。这应该通过SQL脚本来完成 我想到了创建一个新列,将数据移到其中,删除旧列,然后重命名新创建的列。 有人可以帮我举个例子吗?在SQL中也有一个函数可以将字符串解析为十进制? 谢谢 问题答案: 您无需添加新列两次,只需在更新新列后删除旧列即可: 请注意,如果不是数