scala - JetGradle 可以在 IntelliJ 12 中与 Gradle 生成的具有 Scala 构面的项目文件一起使用吗?

标签 scala intellij-idea gradle

我一直在尝试为我公司的 Java/Scala 项目切换到 IntelliJ 和 Gradle。从命令行来看,Gradle 非常棒,但是在将 Gradle 与 IntelliJ 以及具有 Scala 方面的项目一起使用时,我遇到了问题。

我已经尝试以两种方式导入项目,唯一能让 Scala 方面工作的方法是运行:

gradle idea

使用 Gradle IDEA 插件。在那之后,我需要做的就是打开项目的ipr文件,项目工作正常。

但是,我想在 IntelliJ 中为各种事情运行一些 Gradle 任务(代码生成是最大的任务)。我希望能够使用 JetGradle 来运行这些任务。问题是当我将 Gradle 项目链接到 JetGradle 时,每个项目中的依赖关系都会破坏 Scala 方面的编译器设置。

这是一个多模块项目。这里是 build.gradle 对于 parent :
allprojects {
    apply plugin: 'idea'

    version = '1.0'
    group = 'company-x'

    repositories {
        mavenCentral()
    }
}

这是 build.gradle 对于 scala 模块:
apply plugin: 'scala'

dependencies {
  compile 'org.scala-lang:scala-library:2.10.1',
          'org.scala-lang:scala-reflect:2.10.1',
          'org.scala-lang:scala-compiler:2.10.1',
          'org.slf4j:slf4j-log4j12:1.7.2',
          'com.typesafe.akka:akka-actor_2.10:2.1.4'

  testCompile 'junit:junit:4.8.1',
              'org.scalatest:scalatest:1.2'
}

在将项目链接到 JetGradle 之前,使用名为“scala-compiler-2.10.1”的库设置 Scala 方面,其中包含 Scala 编译器、库和反射 jar 和 src。链接项目后,项目库将替换为所有 Gradle 项目依赖项。 Scala方面然后给出错误:
Compiler library: no scala-library*.jar found

当我再次查看这些库时,仍然有一个名为“scala-compiler-2.10.1”的库,但它只是编译器。图书馆和反射 jar 现在被分开了。

有没有人想出如何让 Scala 方面和 JetGradle 相互配合?

最佳答案

从这个 IntelliJ 博客 (Better Gradle Support in IntelliJ IDEA 12.1) 看来,JetGradle 似乎还没有准备好支持 Scala。
我正在等待 IntelliJ 13.x 并暂时坚持使用 Maven。

关于scala - JetGradle 可以在 IntelliJ 12 中与 Gradle 生成的具有 Scala 构面的项目文件一起使用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16946860/

相关文章:

scala - 2个给定日期之间的随机日期

java - 如何将 s3/Hdfs 中的文件附加到 Spark-Scala 中的电子邮件?

java - IntelliJ 和获取用户输入

debugging - Squeryl 仅在 Debug模式下无法反射(reflect)

android - 在 2 个功能模块中导入同一个库时 list 合并失败

class - 类片段和对象片段之间的区别

scala - Spark 中是否有 Executor Startup 的 Hook ?

具有相应 ABI 架构的 Android APK Artifact 名称

git - 如何将我的代码推送到 Intellij 中 Github 上的新存储库?

hadoop - Gradle构建Docker镜像在重复库上失败