代码之家  ›  专栏  ›  技术社区  ›  geostocker

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

  •  1
  • geostocker  · 技术社区  · 6 年前

    免责声明:

    我问了一个 question yesterday ,标记为的副本 this question .

    然而,那个标记它的人并没有一直考虑到我在重复邮件的答案之后并没有对我的问题进行分类。此外,这个问题是关于从Java 8到Java 9的移动,这是当时的beta版本。

    在我的情况下,我从 Java 8 to 11 (oracle, not openjdk) ,这是Java的当前稳定版本。此外,我正在运行第二至最新版本的intelig(2018.3),最新版本为2018.3.1。

    我按照我的问题评论中概述的步骤进行,但它仍然不能解决我的问题。

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


    实际问题:

    正如标题中提到的,我已经将javasdk版本更新为11。

    当我这样做时,Intellij的所有引用(同一源根文件夹中的类引用)都将丢失。使用更高版本的JDK时,即使是包声明也无效。当我在1.8上运行它时,一切都运行良好(有关成功重建的信息,请参见第一个图像)。

    Version

    在更改为OpenJDK-11之后,通过以下方式升级 this answer - see manual ,我收到这些错误:

    Errors

    如上图所示,列表示例位于正确的包/源根目录中,但似乎不可访问(文件确实存在!).

    我已经遵循了其他线程的建议,例如重新编译、使缓存无效、重新启动等。

    似乎没有什么能让我编译这个项目。

    编辑:

    最新截图(6/12/18),带JDK 11。

    enter image description here

    使用JDK 8编译成功的屏幕截图:

    enter image description here

    未能编译person.java类:

    enter image description here

    1 回复  |  直到 6 年前
        1
  •  1
  •   Karol Dowbecki    6 年前

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

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

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

    enter image description here

    您很可能需要解决这类问题并进行项目重建。( Build gt; Rebuild Project 从顶部菜单)。目前您正在运行一个部分导入的项目,很难知道根本原因是什么。