2017-06-29 17 views
0

私はSBTを使用してプロジェクトに依存関係を組み込みますが、一部の依存関係がランダムに無視される理由は見つかりませんでした。 .ivy2/cacheディレクトリに存在していても、その内容を削除しようとしましたが、やり直しても同じ問題があります。一部のSBT依存関係は無視されます

私の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の依存関係を作成するために再試行するとき

+0

あなたはほぼ3歳のsbtバージョンを使用している理由は何ですか? – mfirry

+0

申し訳ありません0.13.15 –

+0

しかし、Scalaは2.10.5ですよね? – mfirry

答えて

0

を無視されました私は最終的に私の問題の解決策を見つけた、私のプロジェクトはsbt eclipseコマンドでSBTを介してEclipseプロジェクトに変換しなければならなかった。 当初Scalatraプロジェクトは、このコマンドでSBTを経て作成されました: sbt new scalatra/scalatra-sbt.g8

トリックが依存関係をインポートするために開始する前にプロジェクトをeclipsifyすることです。

関連する問題