【问题标题】:Unable to create Scala class on IntelliJ无法在 IntelliJ 上创建 Scala 类
【发布时间】:2016-10-26 16:19:16
【问题描述】:

我刚刚开始学习 Scala。 我已经为 IntelliJ 安装了 Scala 插件,并创建了一个新的 Scala 项目。但是当我右键单击 src 文件夹以创建一个新的 Scala 类时,没有这样做的选项。我错过了什么吗?

【问题讨论】:

  • 您是否指定了 Scala SDK?如果您正确设置项目并指定 SDK,它应该可以工作。
  • 我尝试复制相同的问题,但我开始制作 scala 文件。我可以建议您解决:创建一个新项目并在 scala 中选择 sbt 项目,然后在 src.main 中创建一个新的 scala 文件。希望对您有所帮助,或者您可以尝试 RESET intellij 的设置。
  • 就像@evan058 说的,它是SDK。出于某种原因,IntelliJ 有时不会自动选择 scala sdk。如果没有配置,就会发生这种情况。
  • 另一种可能性是您对 Scala 源代码使用了错误的路径。他们应该进入src\main\scalasrc\test\scala。如果你安装了sbt,你可以在你的项目目录中启动它并调用命令inspect scalaSource,它会告诉你Scala源必须在哪里。
  • 请查看其他答案中的 cmets。项目中的空间可能是此错误的原因。

标签: scala class intellij-idea


【解决方案1】:

创建项目的时候都是jdk。点击对应Java选择栏中的“下载”,它会为你选择版本

【讨论】:

    【解决方案2】:

    如果其他人遇到同样的问题并且上述方法不起作用,那么对我有用的是:

    • 关闭 IntelliJ
    • 删除 .idea 文件夹
    • 打开项目

    【讨论】:

      【解决方案3】:

      我在创建第一个 Scala 项目时遇到了同样的问题,我能够以更简单的方式解决它。 单击“到处搜索”按钮并输入“sbt”,或直接单击位于屏幕边缘右侧的“sbt”按钮。

      现在只需点击“重新加载所有 sbt 项目”按钮。

      这对我有用,我希望它能帮助别人。

      【讨论】:

        【解决方案4】:

        按照以下为我解决的步骤:

        • scala 插件添加到您的 Intellij IDE。(可以通过导航到文件 -> 设置 -> 插件来添加插件)
        • 启用 scala 插件
        • 重启IDE

        【讨论】:

          【解决方案5】:

          我遇到了同样的问题,我所做的是右键单击项目 ---> 然后选择添加框架支持--> 在左侧角落有一个提到 Groovy、Kotlin、Maven 和 Scala 的列表。- --> 从列表中我选择 Scala 但仍然有问题,因为未指定库 --->单击创建并要求我选择版本,因为我已安装 2.11.12,我选择它并开始下载它.下载后,我选择了 Scala,问题就解决了。

          【讨论】:

          • 谢谢。这对我很有帮助。
          【解决方案6】:

          右键单击您的项目,“添加框架支持”并选择 Scala 框架,然后通过右键单击可以创建 Scala 类的包。

          在此之后,右键单击src > Mark directory as > Sources Root

          做这两个应该可以解决你的问题!

          【讨论】:

          • 现在只能加scala脚本不能加类?!有什么想法吗?
          • 我也有同样的问题,在添加框架菜单中没有看到 Scala 框架
          • 仔细看。 Scala 类在第一部分,但 scala 脚本也在列表中
          • 此外,只有在文件>设置下更新了正确的代理设置后,此步骤才有效。
          • 我已经安装了scala插件,但是左边没有Scala框架选项,只有Maven
          【解决方案7】:

          在我的情况下,选择 Sources Root 后它没有显示任何 Scala 类选项,然后我选择 Generated Sources Root,右键单击 src > 将目录标记为 > Generated Sources Root。 这对我有用

          【讨论】:

            【解决方案8】:

            我遇到了类似的问题,我要解决的只是通过右键单击 src/main/scala 创建一个包。创建包后,右键单击包,您应该能够找到 scala 类选项。

            【讨论】:

              【解决方案9】:

              在 IntelliJ IDE 2019.1 Ultimate 上,启用 FRAMEWORK Scala,如下所示:

              【讨论】:

              • 感谢您对图像的回答...它就像魅力一样!
              【解决方案10】:

              我也遇到了同样的问题,因为没有安装 Scala SDK,所以在 intellij Idea 编辑器中看不到 scala 文件选项。因此,您在安装 SDK for Scala 后摆脱了这个问题。

              【讨论】:

              • 应该是评论
              【解决方案11】:
                  You can add the scala maven plugin reference in the pom.xml as below 
              
               <build>
                  <sourceDirectory>src/main/scala</sourceDirectory>
                  <testSourceDirectory>src/test/scala</testSourceDirectory>
                      <plugins>
                          <plugin>
                              <groupId>net.alchim31.maven</groupId>
                              <artifactId>scala-maven-plugin</artifactId>
                              <version>3.2.2</version>
                              <executions>
                                  <execution>
                                      <goals>
                                          <goal>compile</goal>
                                          <goal>testCompile</goal>
                                      </goals>
                                  </execution>
                              </executions>
                              <configuration>
                                  <scalaCompatVersion>2.11</scalaCompatVersion>
                                  <scalaVersion>2.11.8</scalaVersion>
                              </configuration>
                          </plugin>
                      </plugins>
                  </build>
              
                  Once you do this and build you will be able to see the option of the scala class.
              

              【讨论】:

              • 当您使用 mavan 框架创建项目时,此选项将起作用,并且在 SBT 的情况下您已添加 build.sbt 文件
              • @ChicksPatel 是的,当您仅使用 maven 框架创建项目时,它会起作用。由于问题中没有提到具体的框架,我认为答案可能会对某人有所帮助。
              【解决方案12】:

              转到 Src 文件夹并选择标记为目录,然后选择名为 source root 的选项,这将解决您的问题。

              【讨论】:

                【解决方案13】:
                1. 创建新的 gradle 项目 (java)
                2. 将新模块“scala”添加到 /src/main/ 和“Make Directory”作为源...
                3. 在 build.gradle 中添加了依赖项:

                  group 'example-scala'
                  version '1.0-SNAPSHOT'
                  
                  apply plugin: 'java'
                  apply plugin: 'scala'
                  
                  sourceCompatibility = 1.8
                  
                  repositories {
                       mavenCentral()
                  }
                  
                  dependencies {
                     compile 'org.scala-lang:scala-library:2.12.6'
                     testCompile 'org.scalatest:scalatest_2.11:3.0.5'
                     testRuntime 'org.scala-lang.modules:scala-xml_2.11:1.0.6'
                     testCompile group: 'junit', name: 'junit', version: '4.12'
                  
                  } 
                  

                【讨论】:

                  【解决方案14】:

                  当文件夹未正确标记为源文件夹(蓝色文件夹符号)时,我遇到了这种情况。如果是这种情况,只需右键单击整个项目并选择打开模块设置,然后您可以将相应的文件夹标记为源: Module settings where you may select src as Source folder

                  【讨论】:

                    【解决方案15】:

                    您只需从项目名称上方的下拉菜单中选择“包”而不是“项目”选项。

                    【讨论】:

                      【解决方案16】:

                      添加 libraryDependencies += "org.scala-lang.modules" %% "scala-parser-combinators" % "1.0.50" 在目标中 -> built.sbt 文件 这适用于 IntelliJ IDEA 2017

                      【讨论】:

                      • 这在 IntelliJ IDEA 2018.3 中对我有用,但我将版本号更改为 1.1.1
                      【解决方案17】:

                      我想通了,右键src > Mark directory as > Sources Root.

                      现在再试一次。

                      【讨论】:

                      • 太棒了!将您的答案和最佳答案结合起来就可以了!
                      • 我必须同时做这个和最佳答案!
                      • 这应该是顶部。
                      【解决方案18】:

                      我也遇到了这个问题。原来 IntelliJ 没有将我的 src/main/scala 文件夹标记为“源”文件夹。

                      为此:Project Structure -&gt; Modules -&gt; 右键单击​​文件夹和Mark as "Source"(蓝色)

                      同样,src/main/test 文件夹未标记为测试文件夹。在这些文件夹被适当标记后,我能够添加 scala 类。

                      【讨论】:

                      • 这是正确的 - 虽然我在下面做了一个稍微不同(和更快)的方式。
                      【解决方案19】:

                      在 IDEA 2016.2.5

                      来自新的 SBT 或 Scala 项目。

                      • 打开项目结构
                      • 在“项目”选项卡上添加您的 JDK(在 SDK 选项卡中也应该可见)
                      • 在全局库下添加 Scala SDK。

                      很遗憾,只是将它添加到您的构建中。SBT 不会影响 IDE 行为。

                      【讨论】:

                        【解决方案20】:

                        每次我创建一个名称中带有空格的新项目时都会遇到这个问题。例如“Hell Wev”。使用“HellWev”或类似名称作为项目名称似乎可以正常工作

                        【讨论】:

                        • 我也遇到了以数字开头的项目名称的问题。重命名后,一切正常。
                        • 只是为了添加我的一粒盐。是的,项目文件夹中的空间会创建此行为。
                        • 遇到了同样的问题,@user3846506 的评论是我的答案,我重新创建了名称中没有数字的项目,项目打开后 scala 文件夹是蓝色而不是灰色。跨度>
                        【解决方案21】:

                        右键单击SrcScala 文件夹:)

                        【讨论】:

                        • 所描述的问题正是您所展示的。该菜单中没有 Scala 类。这个动画没有帮助
                        • 动画演示了菜单是上下文相关的。右键单击“scala”文件夹提供选择“Scala Class”的选项;右键单击“src”文件夹不会。
                        • 那么这是正常的行为吗?所有的教程都过时了?
                        • @user1761806 我从未审查过任何教程,因此我无法告诉您是否有任何教程已过时。在这个问题上,我希望这个关于上下文相关菜单的答案会过时,但从 InteliJ 2017.2 开始,即使 UI 发生了变化,动画仍然具有说明性。
                        • 动画没有帮助。您绝对可以拥有像 /scala 这样的目录(并标记它具有 Sources Root),但仍然不会出现 New Scala Class。正确答案是@Majico
                        【解决方案22】:

                        默认情况下,Intellij 有时不会获取依赖项。您需要创建一个单独的 sbt 或 maven 项目,然后将其导入 Intellij。

                        如果你想创建一个 Java Scala Mixin 项目,你可以关注这个blog post。然后将其导入 Intellij。

                        或者,如果您只是想学习 Scala。

                        您可以下载这个基于 maven 的 Scala Starter Template 并将其导入 intellij 中,然后继续处理它。

                        注意:您可能必须在

                        中指定模块的来源

                        项目结构 -> 模块选项卡

                        【讨论】:

                          猜你喜欢
                          • 1970-01-01
                          • 1970-01-01
                          • 1970-01-01
                          • 2019-10-22
                          • 2014-05-26
                          • 1970-01-01
                          • 2019-08-06
                          • 1970-01-01
                          • 1970-01-01
                          相关资源
                          最近更新 更多