Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Eclipse 某些SBT依赖项被忽略_Eclipse_Scala_Dependencies_Sbt_Scalatra - Fatal编程技术网

Eclipse 某些SBT依赖项被忽略

Eclipse 某些SBT依赖项被忽略,eclipse,scala,dependencies,sbt,scalatra,Eclipse,Scala,Dependencies,Sbt,Scalatra,我使用SBT在我的项目中包含依赖项,但我找不到随机忽略某些依赖项的原因。即使它们存在于.ivy2/cache目录中,我也尝试删除它的内容并重试,但仍然存在相同的问题 我的SBT版本是0.13.15,下面是一个示例: import org.scalatra.sbt._ import org.scalatra.sbt.PluginKeys._ import ScalateKeys._ val ScalatraVersion = "2.4.1" ScalatraPlugin.scalatraSet

我使用SBT在我的项目中包含依赖项,但我找不到随机忽略某些依赖项的原因。即使它们存在于
.ivy2/cache
目录中,我也尝试删除它的内容并重试,但仍然存在相同的问题

我的SBT版本是
0.13.15
,下面是一个示例:

import org.scalatra.sbt._
import org.scalatra.sbt.PluginKeys._
import ScalateKeys._

val ScalatraVersion = "2.4.1"

ScalatraPlugin.scalatraSettings

scalateSettings

organization := "com.*****"

name := "****"

version := "0.1.0-SNAPSHOT"

scalaVersion := "2.10.5"

val sparkVersion = "1.6.0"

resolvers += Classpaths.typesafeReleases

libraryDependencies ++= Seq(
  "org.scalatra" %% "scalatra-json" % ScalatraVersion,
  "org.json4s"   %% "json4s-jackson" % "3.2.11",
  "org.scalatra" %% "scalatra" % ScalatraVersion,
  "org.scalatra" %% "scalatra-scalate" % ScalatraVersion,
  "org.scalatra" %% "scalatra-specs2" % ScalatraVersion % "test",
  "ch.qos.logback" % "logback-classic" % "1.1.5" % "runtime",
  "org.eclipse.jetty" % "jetty-webapp" % "9.2.15.v20160210" % "container",
  "javax.servlet" % "javax.servlet-api" % "3.1.0" % "provided"
)
libraryDependencies += "org.apache.spark" %% "spark-core" % sparkVersion
libraryDependencies += "org.apache.spark" %% "spark-sql" % sparkVersion
libraryDependencies += "org.scalaz" %% "scalaz-core" % "7.2.14"

scalateTemplateConfig in Compile := {
  val base = (sourceDirectory in Compile).value
  Seq(
    TemplateConfig(
      base / "webapp" / "WEB-INF" / "templates",
      Seq.empty,  /* default imports should be added here */
      Seq(
        Binding("context", "_root_.org.scalatra.scalate.ScalatraRenderContext", importMembers = true, isImplicit = true)
      ),  /* add extra bindings here */
      Some("templates")
    )
  )
}

enablePlugins(JettyPlugin)

在我的示例中,有时会忽略
scalatra json
,当我尝试创建一个新项目时,
spark
依赖项被忽略

我最终找到了问题的解决方案,我的项目必须通过SBT使用
SBT eclipse
命令转换为eclipse项目。 最初,Scalatra项目是使用以下命令通过SBT创建的:
sbt新scalatra/scalatra sbt.g8


诀窍是在开始导入依赖项之前使项目黯然失色。

为什么要使用将近3年的sbt版本?很抱歉,它是0.13.15Ok。但是Scala是2.10.5,对吗?问题是如何表现出来的?运行
scalac
时是否有编译错误?您是否报告IDE找不到某个包?你正在建造的一个大罐子里的图书馆不见了吗?还有什么?是的build.sbt文件中的所有信息都是正确的@mfirry