IntelliJ“无法推断Scala类路径......”但Gradle testCompile是否正确?

时间:2017-09-21 23:32:05

标签: scala intellij-idea gradle

我通过Gradle建立了一个Spring Boot项目,最近看到了一些加特林测试。需要Scala支持的Gatlings东西都在src / test / scala中。 build.gradle文件有一个新的testCompile依赖项来支持它,从gradle的角度看,一切都很好......

的build.gradle

apply plugin: 'scala'
...
dependencies {
  ...
  testCompile "org.scala-lang:scala-library:2.11.1"
  testCompile "io.gatling.highcharts:gatling-charts-highcharts:2.2.5"
  ...
}

gradle文档表明testCompile就是我们所需要的:https://docs.gradle.org/current/userguide/scala_plugin.html

IntelliJ对此配置坚持

不满意
Warning:<i><b>root project 'tenderfoot': Unable to build Scala project configuration</b>
Details: org.gradle.api.GradleException: Cannot infer Scala class path because no Scala library Jar was found. Does root project 'tenderfoot' declare dependency to scala-library? Searched classpath: configuration ':compileClasspath'.</i>

如果我将依赖关系从testCompile提升到compile,那么intellij警告会消失,但现在我的春季启动uber jar事情会不必要地膨胀。

出路是什么?如何让IntelliJ停止对此发出警告?

这实际上是一个IntelliJ错误吗?

1 个答案:

答案 0 :(得分:0)

我也遇到了这个问题(必须从IntelliJ手动设置依赖性)。

我通过将相关性设置为compileOnly而不是compile来“修复”它,该范围在最终发行版中不包括JAR。

我使用的代码是(请注意,我的依赖项包括Scala作为传递性依赖项):

    compileOnly("io.gatling.highcharts:gatling-charts-highcharts:$gatlingVersion")