IntelliJ IDEA Ultimate 2018.3 认为我的 Java 9 项目是 Kotlin 项目

Posted

技术标签:

【中文标题】IntelliJ IDEA Ultimate 2018.3 认为我的 Java 9 项目是 Kotlin 项目【英文标题】:IntelliJ IDEA Ultimate 2018.3 thinks my Java 9 Project is a Kotlin Project 【发布时间】:2019-04-29 01:30:23 【问题描述】:

我有一个 IntelliJ 项目,它由几个子项目组成,这些子项目都是 Java 9 模块。我使用 Maven 作为构建系统。我的项目没有“方面”。我的运行配置如下所示:

我的项目设置如下所示:

我可以用 Maven 构建一切。但是,当我尝试用 IntelliJ 编译时,它莫名其妙地认为我的项目是 Kotlin 项目,无法编译:

错误:Kotlin:在模块图中找不到 Kotlin 标准库。请确保您的模块定义中有“requires kotlin.stdlib”子句

有人知道如何解决这个问题吗?我已经尝试删除运行配置并重新创建它。这解决了一段时间的问题,但随后又随机出现。

【问题讨论】:

请在youtrack.jetbrains.com/issues/KT 提交错误并分享示例项目以进行复制(私下)。 作为一种解决方法,我在 IntelliJ 中禁用了 Kotlin 插件。我必须检查是否允许我共享该项目... 我在 IntelliJ IDEA 下提交了一个错误报告:youtrack.jetbrains.com/issue/IDEA-224595 提交问题:youtrack.jetbrains.com/issue/KT-27458 【参考方案1】:

即使在 2019.1.3 中也存在该错误。

一个对我总是有效的解决方案是:

Build menu => Rebuild Project

使用 JDK 12.0.1 测试


随着越来越多的 Java 项目传递到 JDK 11 ++,IntelliJ 团队应该尽快解决这个问题

【讨论】:

@dax 如果以上答案对您有解决方案,请标记为答案:) 节省了我的时间。谢谢老哥【参考方案2】:

我遇到了同样的问题。我在一个使用 Maven 管理的纯 Java 项目中工作。直到几天前,我应用了解决方案“重建”项目,但有时错误又回来了。

经过更多调查,发现禁用“启用迁移检测”菜单后,问题就消失了。

我希望这会有所帮助。

【讨论】:

这对我也有用!首先禁用“启用迁移检测”,然后重建项目。【参考方案3】:

尝试使用 Ctrl+Shift+F9 重建模块或右键单击模块并在菜单中选择“重建”。

【讨论】:

我认为它没有回答这个问题。由于作者提到某些解决方法会在一段时间内有所帮助,因此目标是稳定成功构建,而不仅仅是构建一次。 当我使用 maven 原型创建 javafx 项目并使用 intellij 运行配置运行应用程序时出现上述错误。重建但修复它【参考方案4】:

同时,可以使用 Kotlin JavaRuntime 中提供的 kotlin-stdlib.jar 修复此问题:

module kotlin.test 
    requires kotlin.stdlib;

kotlin.test 应替换为您的模块名称。

以防万一细节很重要,我正在使用

IntelliJ IDEA 2018.3 (Community Edition)
Build #IC-183.4284.148, built on November 21, 2018

上面提到的 Kotlin JavaRunTime 的来源来自 IntelliJ .app 中的路径 Contents/plugins/Kotlin/kotlinc/lib,其中包括 kotlin-stdlib.jar

【讨论】:

感谢您的回答,但我不想在我的项目中添加任何我不需要的东西... @dax 我明白这一点,这就是为什么使用第一个词 Meanwhile。更好的解决方案是 IDE 修复此问题,正如 CrazyCoder 指出的那样,您可以在此处报告错误。【参考方案5】:

我通过禁用 Kotlin 插件修复了这个错误,因为我没有使用它并且问题已解决

【讨论】:

【参考方案6】:

我有同样的问题,我删除了文件并重新开始,然后它工作正常

【讨论】:

【参考方案7】:

更新你的 module-info.java 文件

requires javafx.fxml;
requires javafx.controls;
requires javafx.graphics;
requires javafx.web;

opens sample;

opens sample.controller;

它会打开包含您的 Launcher 文件的包(例如 sample)并打开包 conatinsyoyr 控制器及其相应的 fxml 文件(例如 sample.controller)

【讨论】:

【参考方案8】:

这是对我有用的最后一个选项.. 您需要先检查几件事

尝试使用安装项目

mvn 全新安装

如果项目已安装,那么这是您的 IDE 无法正确构建项目的问题

FIX:: 为我工作 重新安装 IDE.. 将为您节省一天的时间。

【讨论】:

请添加更多详细信息以扩展您的答案,例如工作代码或文档引用。【参考方案9】:

我遇到了同样的问题。这是有效的:

    在 IntellijIDEA 上,转到应用程序顶部的“工具”菜单:。 然后向下滚动到“Kotlin”。 点击“在项目中配置 Kotlin”。

【讨论】:

以上是关于IntelliJ IDEA Ultimate 2018.3 认为我的 Java 9 项目是 Kotlin 项目的主要内容,如果未能解决你的问题,请参考以下文章

用maven来创建scala和java项目代码环境(图文详解)(Intellij IDEA(Ultimate版本)Intellij IDEA(Community版本)和Scala IDEA for

IntelliJ_idea_Ultimate_2018.1_windows

IntelliJ IDEA Ultimate 安装&激活

IntelliJ IDEA Ultimate 安装&激活

IntelliJ IDEA(Ultimate版本)的下载安装和WordCount的初步使用(本地模式和集群模式)Ultimate

为 Scala/SBT 设置 IntelliJ IDEA Ultimate