私はSBTで新しく、私はIntellijIDEAに自分の仕事を移行することを考えています。SBT依存関係にJava未完プロジェクトを追加する
私はeclipseを使用して作成したJavaプロジェクトを持っていますが、今はscalaでそれを使用したいと思います。
しかし、そのJavaプロジェクトは絶えず変化しており、毎回jarをコンパイルしてlibフォルダに入れたくありません。
この依存関係を追加する簡単な方法はありますか?
私はSBTで新しく、私はIntellijIDEAに自分の仕事を移行することを考えています。SBT依存関係にJava未完プロジェクトを追加する
私はeclipseを使用して作成したJavaプロジェクトを持っていますが、今はscalaでそれを使用したいと思います。
しかし、そのJavaプロジェクトは絶えず変化しており、毎回jarをコンパイルしてlibフォルダに入れたくありません。
この依存関係を追加する簡単な方法はありますか?
するのは、次の2つのプロジェクトがあるとしましょう:
1)/main-project
では、あなたが/other-project
でラインname := "main-project-id"
2)を含むbuild.sbt
を持って、あなたはbuild.sbt
ラインname := "other-project-id"
を含むを持っているあなたは、作成することができますメインプロジェクトからその他のプロジェクトへのファイルの追加による依存関係/main-project/project/Build.scala
:
import sbt._
import Keys._
object MainProjectBuild extends Build {
lazy val main = Project(id = "main-project-id", base = file(".")) dependsOn(other)
lazy val other = Project(id = "other-project-id", base = file("other-project"))
}
/other-project
へのリンクを/main-project
の内側に追加します。ような何か:/main-project/other-project/
:
cd /main-project
ln -s ../other-project other-project
あなたが今というディレクトリ内other-project
を持つように。
sbt compile
または/main-project
の中で実行すると、期待どおりに動作します。
EDIT
異なる、おそらく簡単な方法は、ちょうど彼らが同じソースディレクトリにあるように見えますあなたのJavaソースへのリンクを作成することです。だから、
あなたのScalaのコードが/main-project/src/main/scala/somepackage/...
にあり、Javaコードが/other-project/src/main/java/otherpackage/...
であり、そして、あなたが行うことができれば:
cd /main-project/src/main
ln -s /other-project/src/main/java java
そのディレクトリ/main-project/src/main/java
だけの依存元を指すされますが、SBTは、それを構築しますすべて一緒に。
うーん...別のbuild.sbtを作成するか、ディレクトリの動作を指摘することが本当に必要ですか?また、本当にフォルダを 'main-project /'フォルダに移動する必要がありますか? –
@Tiago、おそらくもっと簡単なアイデアで編集 – dhg
私は仕事をしたいときはいつでも電話しなければなりませんか?単純には見えません。私はまだプロジェクトの場所を移動する必要があるという問題があります。しかし、確かに私は複雑にしたくありません。私はIntellijに移動しようとしてみましょう。両方のオプションをありがとう。 –