How to use Scala in IntelliJ IDEA (or: why is it so difficult to get a working IDE for Scala)?

前端 未结 9 1649
逝去的感伤
逝去的感伤 2021-01-30 10:26

I recently gave up trying to use Scala in Eclipse (basic stuff like completion doesn\'t work). So now I\'m trying IntelliJ. I\'m not getting very far.

I\'ve been able to

9条回答
  •  轻奢々
    轻奢々 (楼主)
    2021-01-30 10:53

    I have encountered the same scalac error when trying to run a Scala project in Intellij Idea 9.0.2 and I've managed to find a solution by chance :). These are the steps I took in creating the project and running it.

    I have created a Scala project in Intellij Idea 9.0.2 final (it was released today). I have installed the Scala plugin, restarted the IDE and created a new Scala project (with the name "TestScala") with scala-2.8.0.Beta1 as project library. Once the project is created and the scala libraries downloaded, I have created a Test.scala file with the following content:

    object Test  {
     def main(args:Array[String]){
       println("hello")
     }
    }
    

    After that, I created a launch configuration ("Edit Configurations"), choosing the "Application" template. I set as main class Test and choose the project name ("TestScala") in the "Use classpath and JDK of module" combo box. When I run the configuration I get the same error as you reported ("Scalac internal error: class java.lang.ClassNotFoundException") .

    Now comes the freaky part :). I right click on the project, choose "Module Settings", have a look on all settings but I don't change anything . Click "apply" and "ok", try to run configuration again and it works :) .

    I use Intellij Idea 9.0.2 the final release (build 95-66); Ubuntu 9.10 and JDK 1.6.0_18. I also have to mention that I had a JDK configured in Intellij, otherwise there is an extra step to configure it.

    UPDATE:

    When checking the setting of the module, one needs to click on the Module->Scala and Facets->Scala (expand it and click on Scala(ProjectName)) . Both of these settings are about the scala compiler and scala library location. I would guess these values are not properly set when the project is created but are saved once the user touches them and saves the settings.

提交回复
热议问题