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

IntelliJ IDEA Ultimate 2018.3认为我的Java 9项目是一个Kotlin项目,java,maven,intellij-idea,kotlin,java-9,Java,Maven,Intellij Idea,Kotlin,Java 9,我有一个IntelliJ项目,它由几个子项目组成,这些子项目都是Java9模块。我使用Maven作为构建系统。我的项目没有“方面”。我的运行配置如下所示: 我的项目设置如下所示: 我可以用Maven很好地构建一切。但是,当我尝试使用IntelliJ编译时,它不知何故认为我的项目是一个Kotlin项目,无法编译它: 错误:Kotlin:在模块图中找不到Kotlin标准库。请确保模块定义中包含“requires kotlin.stdlib”子句 有人知道怎么解决这个问题吗?我已尝试删除运行配置

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

我的项目设置如下所示:

我可以用Maven很好地构建一切。但是,当我尝试使用IntelliJ编译时,它不知何故认为我的项目是一个Kotlin项目,无法编译它:

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


有人知道怎么解决这个问题吗?我已尝试删除运行配置并重新创建它。这会在一段时间内修复该问题,但随后它会随机重新出现。

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

module kotlin.test {
    requires kotlin.stdlib;
}
其中,
kotlin.test
应替换为您的模块名称

为了以防万一,我正在使用


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

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

即使在2019.1.3中也存在该错误

一个始终适用于我的解决方案是:

Build菜单=>重建项目

使用JDK 12.0.1进行测试



这应该由IntelliJ团队尽快解决,因为越来越多的Java项目正在传递给JDK 11++

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

经过进一步调查,我发现在禁用“启用迁移检测”菜单后,问题消失了


我希望这能有所帮助。

我也遇到了同样的问题,我删除了文件并重新开始,之后工作正常。以下是有效的方法:

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

  • 我通过禁用Kotlin插件修复了此错误,因为我没有使用它,问题已得到解决

    更新您的module-info.java文件

    requires javafx.fxml;
    requires javafx.controls;
    requires javafx.graphics;
    requires javafx.web;
    
    opens sample;
    
    opens sample.controller;
    

    它会打开包含启动程序文件的包(例如sample),并打开包conatinsyoyr controllers及其相应的fxml文件(例如sample.controller)

    请在上提交一个bug并共享示例项目以进行复制(私下)。作为一种解决方法,我在IntelliJ中禁用了Kotlin插件。我必须检查我是否被允许分享这个项目…我已经在IntelliJ IDEA:submitted issue:下提交了一份bug报告,谢谢你的回答,但我不想在我不需要的东西上添加任何要求…@dax我确实理解,这就是为什么我同时使用了第一个词。更好的解决方案是IDE解决这个问题,正如CrazyCoder指出的那样,在IDE中你可以报告一个bug。由于作者提到一些变通方法在一段时间内会有所帮助,所以我们的目标是获得稳定的成功构建,而不仅仅是构建一次。当我使用maven原型创建javafx项目并使用intellij run configuration运行应用程序时,我犯了上述错误。重建,但修复it@dax如果上面的答案对你来说是一个解决方案,请标记为答案:)这对我也有效!首先禁用“启用迁移检测”,然后重新生成项目。
    requires javafx.fxml;
    requires javafx.controls;
    requires javafx.graphics;
    requires javafx.web;
    
    opens sample;
    
    opens sample.controller;