2017-02-12 6 views
1

を構築し、私はこのScalaのプレイとマルチプロジェクトSBTが

activator new foo play-event-sourcing-starter 

のようなスカラ座の演劇プロジェクトにプロジェクトを作成し、正常に生成されたと私は中に入ると簡単にアプリをコンパイルして実行することができます。

しかし、私が望むのは、私は複数プロジェクトのビルドビルドが必要です。私はグーグルでこれを見つけたhttps://www.playframework.com/documentation/2.5.x/SBTSubProjects

しかし、これは私がここで彼らがルートプロジェクトとして遊んでいるので、これと同じではありません。私が望むのは、build.sbtファイルと複数の "ピア"プロジェクトを持つ空のルートプロジェクトがあるということです。それらの1つは遊びです。

だから私は、今私がfooの内部で行って、LearnPlayディレクトリへbuild.sbtを移動

mkdir -p LearnPlay/project 
cd LearnPlay 
activator new foo play-event-sourcing-starter 

に手順を変更しました。またbuild.propertiesplugins.sbtファイルをLearnPlay/projectフォルダに移動しました。

ルートプロジェクトが

lazy val root = (project in file("foo")).enablePlugins(PlayScala) 

なるように、私は、しかし、今のsbtはもうプロジェクトをコンパイルすることはできません、それはプレイフレームワークの依存関係のいずれかを見つけることができませんbuild.sbtファイルを編集しました。

sbt.ResolveException: unresolved dependency: com.typesafe.play#play-server_2.10;2.5.9: not found 
unresolved dependency: com.typesafe.play#play-netty-server_2.10;2.5.9: not found 
unresolved dependency: com.typesafe.play#play-logback_2.10;2.5.9: not found 
unresolved dependency: com.typesafe.play#play-test_2.10;2.5.9: not found 
unresolved dependency: com.typesafe.play#play-omnidoc_2.10;2.5.9: not found 
    at sbt.IvyActions$.sbt$IvyActions$$resolve(IvyActions.scala:313) 

これらは、私のplugins.sbtファイルの内容です。リゾルバは正しく定義されているので、ファイルをサブプロジェクトからルートプロジェクトに移動した後にsbtが依存関係を見つけることができない理由がわかりません。ファイルがfooプロジェクトのプロジェクトディレクトリにあるときにすべてを解決することができました。

resolvers += "Typesafe repository" at "http://repo.typesafe.com/typesafe/releases/" 

// The Play plugin 
addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.5.9") 

// web plugins 
addSbtPlugin("com.typesafe.sbt" % "sbt-digest" % "1.1.0") 

答えて

1

私にいくつかのアイデアを与えた事が問題何があります:

unresolved dependency: com.typesafe.play#play-server_2.10;2.5.9: not found 

あなたはSBTは、Scalaの2.10のための遊びサーバのバージョンをダウンロードしようとしこと、驚いていないですPlay 2.5.xには存在しません。これは既にライフサイクルが終了しているためです。

build.sbtにスカラバージョンを指定していない場合、または2.10に設定している場合は、私のプロジェクトでこれが起こっています。

lazy val root = (project in file("foo")).settings(
    scalaVersion := "2.10.6", 

ので、私はあなただけscalaVersionだったので、あなたは右が、その少し意外ですscalaVersionパラメータを追加し、2.11.xまたは2.12.x

+0

から何かにそれを設定する必要があると思いますルートプロジェクト自体には直接的ではありませんが、sbtプロジェクトで指定されています。それはルートプロジェクトにあったときに正しいスカラバージョンを選ぶことができましたが、ディレクトリを使用していたときは選択できませんでした。 –

+0

完全にあなたのbuild.sbtを表示できますか? – Mysterion

関連する問題