首页 > 解决方案 > 由于版本不匹配,Neo4J 插件无法编译

问题描述

我见过这个问题的变体,但我还没有看到被接受的答案。我正在使用 IntelliJ IDEA 来简单地编译 Neo4J 在 GitHub 上发布的 TraversDemo 示例插件。当我运行 mvn clean package 时,我没有收到任何错误。但是,当我实际尝试将 .jar 文件放入 Neo4J Desktop 上的插件文件夹时。. . neo4j 无法识别插件。所以,我认为我的 .jar 文件有问题,我只是尝试在 IntelliJ 中“构建”java 文件。当我这样做时,我得到了这个错误:

模块“TraversalPlugIn”生产:java.lang.UnsupportedClassVersionError:org/neo4j/annotations/api/PublicApiAnnotationProcessor 已由 Java 运行时的更新版本(类文件版本 55.0)编译,此版本的 Java 运行时仅识别类文件高达 54.0 的版本

我检查并重新检查了我的 Java(适用于 Windows 10)是 Java 8。我检查了 Java 配置 GUI 并要求更新。它说我有最新版本。有谁知道如何解决这个问题?我已经尝试在构建、执行、部署 Java 编译器中使用各种选项。似乎没有任何组合有效。

标签: intellij-ideaneo4jruntime

解决方案


我终于解决了这个问题。解决方案是:(i)剪切现有的java代码(和POM文件);(ii) 完全删除原项目;(iii) 创建一个新的 maven 项目,但这次选择 JDK 16 作为 SDK;(iv) 将 Java 代码和 POM xml 粘贴到新项目中。然后我构建它,并运行 maven clean package,将目标快照插入到插件文件夹中,然后......它终于工作了。


推荐阅读