2016-08-21 9 views
1

scala.io.source.fromFileを使用しようとすると、サブプロジェクトごとに複数のサブプロジェクトからではなくファイルを読み込もうとします。これは私が必要とする場合もあれば、ルートリソースを使いたい人もいます。scala.io.source.fromFile sbtでサブプロジェクトをルートリソースフォルダから読み取る

SBTのサブプロジェクトとルートリソースフォルダからサブプロジェクトを読み込む慣用方法は何ですか?

+0

以下の回答は、どのように役立ちましたか?フィードバックがあれば、より役立つようにすることができます。 – marios

答えて

2

resourceDirectoryからどのスコープを呼び出すかによって異なります。ここでは1つのルートのプロジェクトと(SBT REPLからの)二つのサブプロジェクトとビルドの例である:

> resourceDirectory 
[info] alpha/compile:resourceDirectory 
[info] /Users/xyz/sbt-tutorial/sub-projects/sub-a/src/main/resources 
[info] beta/compile:resourceDirectory 
[info] /Users/xyz/sbt-tutorial/sub-projects/sub-b/src/main/resources 
[info] root/compile:resourceDirectory 
[info] /Users/xyz/sbt-tutorial/sub-projects/src/main/resources 

あなたはalpha/compile:resourceDirectoryはあなたにalphaと呼ばれるサブプロジェクトのリソースディレクトリを取得します呼び出し、見ることができるように。

あなたは、このためのsbt DSL表記をしたい場合、それは次のようになります。

myTask := { 
    val resDir = (resourceDirectory in (alpha, Compile)).value 
    ... 
} 

ルートプロジェクトのリソースディレクトリを取得したい場合は、ThisBuildalphaなどを置き換えることができます。

+0

しかし、どのようにいくつかのリソースが見つかりました。 fromFileだけが問題を抱えているようです。アプリケーションの構成とログバックは、サブプロジェクトのリソースから正しく選択されます。 – user3139545

+0

あなたはその質問がどこにコード化されているかを教えていただけますか?それはプロジェクトの設定内か外か?あなたが持っているものを私に見せれば、もっとあなたを助けることができます。 – marios

関連する問題