在IDEA的Maven项目中升级Scala版本

时间:2011-09-19 14:47:58

标签: scala maven intellij-idea

我正在使用IDEA 10.5.2和Scala插件版本0.4.1395以及IDE附带的标准Maven集成插件。我有一个Scala 2.8.0项目具有上述设置,我想将其升级到Scala 2.9.1。我对pom.xml进行了必要的更改。以下是我的pom.xml中的相关部分:

插件部分:

  <plugin>
    <groupId>org.scala-tools</groupId>
    <artifactId>maven-scala-plugin</artifactId>
    <executions>
      <execution>
        <id>compile</id>
        <goals>
          <goal>compile</goal>
        </goals>
        <phase>compile</phase>
      </execution>
      <execution>
        <id>test-compile</id>
        <goals>
          <goal>testCompile</goal>
        </goals>
        <phase>test-compile</phase>
      </execution>
      <execution>
        <phase>process-resources</phase>
        <goals>
          <goal>compile</goal>
        </goals>
      </execution>
    </executions>
  </plugin> 

依赖关系部分:

<dependency>
  <groupId>org.scala-lang</groupId>
  <artifactId>scala-compiler</artifactId>
  <version>2.9.1</version>
</dependency>
<dependency>
  <groupId>org.scala-lang</groupId>
  <artifactId>scala-library</artifactId>
  <version>2.9.1</version>
</dependency>

我的机器上安装了Scala 2.9.1。

在我的项目设置中,在Scala方面,编译器实例化部分有几个“编译器库”选项。然而,我的项目不是建立在选择任何一个项目的基础上的。

当我选择Maven: org.scala-lang:scala-compiler-bundle:2.9.1时,我收到以下错误:

  

无法编译Scala文件   请调整Scala facet中的编译库:无法读取scala-library-2.9.1.jar版本。

当我选择Maven: org.scala-lang:scala-compiler:2.9.1时,我收到以下错误:

  

无法编译Scala文件   请调整Scala facet中的编译器库:找不到scala-library * .jar。

当我选择Maven: org.scala-lang:scala-library:2.9.1时,我收到以下错误:

  

无法编译Scala文件   请调整Scala facet中的编译器库:找不到scala-compiler * .jar。

我做错了什么?我该怎么做才能建立我的项目?

请注意我第一次使用构建工具。任何帮助将不胜感激。谢谢!

2 个答案:

答案 0 :(得分:3)

如果您正在使用IDEA中的maven项目,那么更改Scala版本通常非常容易。

首先,您必须确保IDEA正在使用您的maven项目配置。您可以通过右键单击pom.xml来检查这一点。如果您看到菜单条目“添加为maven项目”(或类似的东西),请单击它。否则,您应该看到一个名为“Maven”的子菜单,这意味着您的maven项目已经正确配置。

现在您可以更改pom.xml中的Scala版本,IDEA应立即下载相应的软件包,并在项目设置中更改Scala编译器(如果已启用pom文件的自动导入)。否则,IDEA会弹出一条消息,允许您手动执行pom文件导入。

但是,我没有使用Scala插件0.4.1395测试这个工作流程,因为我对这个插件版本有一些麻烦。我终于回到版本0.4.1385,这是IMO非常稳定。如果你的Scala插件有任何问题,我建议你也一样。

答案 1 :(得分:0)

您肯定希望使用“捆绑”库。这似乎是由IDEA特别为此设置创建的。也许你拥有的其中一个罐子腐败了?我尝试从您当地的Maven存储库中删除所有内容,然后让Maven再次下载它。