Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在kotlin中使用IntellJ运行hello world需要什么_Kotlin_Intellij Idea - Fatal编程技术网

在kotlin中使用IntellJ运行hello world需要什么

在kotlin中使用IntellJ运行hello world需要什么,kotlin,intellij-idea,Kotlin,Intellij Idea,我有一个Mac(Catalina操作系统),安装了Java 15和IntelliJ 2020.2(社区版)。kotlin插件也已安装。当我创建一个新的Kotlin项目时,添加一个主函数,然后有办法运行它,主函数旁边没有“开始”按钮。问题显然是它找不到运行时。iml文件如下所示 <?xml version="1.0" encoding="UTF-8"?> <module type="JAVA_MODULE" versio

我有一个Mac(Catalina操作系统),安装了Java 15和IntelliJ 2020.2(社区版)。kotlin插件也已安装。当我创建一个新的Kotlin项目时,添加一个主函数,然后有办法运行它,主函数旁边没有“开始”按钮。问题显然是它找不到运行时。
iml
文件如下所示

<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
  <component name="NewModuleRootManager" inherit-compiler-output="true">
    <exclude-output />
    <content url="file://$MODULE_DIR$">
      <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
    </content>
    <orderEntry type="inheritedJdk" />
    <orderEntry type="sourceFolder" forTests="false" />
    <orderEntry type="library" name="KotlinJavaRuntime" level="project" />
  </component>
</module>

当我单击“添加框架支持”时,我可以添加一个新的KotlinJavaRuntime,它只需在
iml
文件中添加一个名为
KotlinJavaRuntime(2)

我不想在这里使用maven或gradle。我知道gradle可以帮我解决依赖关系。我只想要一个普通的香草Kotlin hello world项目。有一个“开始使用IntelliJ IDEA”部分,其中只提到了IntelliJ的Kotlin插件。似乎没有要求安装gradle或maven,插件应该这样做。
我知道您可以使用
brew install kotlin
手动安装SDK,但是文档是错误的,插件本身无法在先前手动安装SDK或使用maven/gradle的情况下运行kotlin。

如果您自己创建了kotlin文件,您必须告诉IntelliJ它应该运行此文件

通常在主方法旁边显示一个运行图标。

选项2:右键单击包含main方法的文件,查看是否有runthisfile选项

选项3:手动添加运行配置

  • 单击“运行”按钮左侧的“添加配置”(不介意它被禁用)
  • 单击+并选择Kotlin
  • 将main类设置为MainKt,这是kotlin的默认值

  • 我想我知道这个案子发生了什么

    Kotlin代码作为“IntelliJ”模块加载到使用maven的Java项目中。IntelliJ中有一个隐藏文件夹
    .idea/libraries/
    ,它缺少Kotlin运行时的描述(这很有意义,因为依赖项是通过maven管理的)。我重新启动并从头创建了一个新项目。这次您将看到文件
    .idea/libraries/KotlinJavaRuntime.xml
    ,它正是从
    iml
    文件中引用的内容。
    .idea
    文件夹非常神奇。对我来说,令人困惑的是IntelliJ中的模块并不是真正与项目隔离的,它们共享
    .idea
    文件夹,就像在本例中一样


    我希望这也能帮助其他用户。

    它不会让我创建运行配置并选择MainKt类。你能发送屏幕截图或gif吗?我已经发布了我找到的解决方案。我真的没想到一个简单的hello world在最好的JavaIDE上会失败。但让我困惑的是IntelliJ是如何管理模块和项目的。