SBTを使用して取得した依存関係をEclipseに認識させる方法を見つけようとしていますか? SBTは正しい依存関係をダウンロードし、〜/ .ivyディレクトリに配置しますが、Eclipseはそれらを表示しません。これを行う方法はありますか?
ありがとう
これはおそらくあなたが探している答えではなく、エレガントではないことを認めますが、現在は私にとってうまく機能しています。つまり、よりエレガントなソリューションを調査して見つけるのではなく、定期的に次のことを行う方が時間がかからないと思います。
Sbt-Eclipseプラグイン( https://github.com/typesafehub/sbteclipse )を使用していると思います。プロジェクトに新しい依存関係を追加するとき(実際には非常にまれですが)、プラグインからEclipseプロジェクトファイルを再生成するだけです。この欠点は、複数のモジュールプロジェクトがあり、Eclipseでプロジェクトを更新した後、Eclipseビルドパスエディターでプロジェクト間の依存関係を再追加する必要があることです。
私が言ったように、それはかなりハッキーですが、全体として私はそれをするのにそれほど多くの時間を本当に失いません。きれいではありませんが、動作します。
幸運を祈ります、アンディ
Sbteclipseプラグインを使用している場合は、簡単な方法で実現できます。 sbtタイプ:
リロード
Eclipse with-source = true
次に、Eclipseで、プロジェクトフォルダーでF5キーを押して更新します。または、右クリックして「更新」を選択します。ただ動作します。
Apache IvyDE Eclipseのプラグインを使用しますが、このアプローチにはさらに幸運があります。 古いsbtのドキュメントに記載されている だけですが、sbt 0.11で動作します
最初に、IvyDEプラグインをEclipseにインストールして再起動します。
Sbtコマンドdeliver-local
を実行します-これにより、依存関係のXML ivyファイルが作成されます。
Eclipseのプロジェクト/プロパティ-Java Build Path-Libraries]で[Add Library]をクリックし、[IvyDE Managed Dependencies]を選択して、ファイルtarget/scala-2.9.1/ivy-を選択します。 projectversion。xml
Build.sbtに新しい依存関係を追加したら、sbtコマンドreload
およびdeliver-local
を再度実行します。次に、パッケージエクスプローラーでプロジェクトのIvyライブラリを右クリックします-「target/scala-2.9.1/ivy-projectversion」という名前になります。 xml [compile、test]」をクリックし、2番目の「Refresh」メニュー項目をクリックします(「Refresh」と「Reload Settings」の間-not「F5 Refresh」 ")。
コマンドプロンプトでプロジェクトフォルダに移動して入力します
sbt Eclipse
これにより、Eclipseプロジェクトに適切な。classpathエントリが生成されます。
Eclipseに戻り、プロジェクトを選択してf5を押すと、参照されているライブラリが再ロードされます。
必要なのは、プロジェクトのホームから実行することだけです。
sbt "Eclipse with-source=true"
またはsbt
consoleと入力して、次のように記述します。
Eclipse with-source=true
ところで:12年1月から何かが変わったかどうかはわかりませんが、今ではもっと簡単に思えます。
以下は私のために働く:
1)Eclipseでプロジェクトを閉じる
2)ファイルエクスプローラーで、Eclipseプロジェクトを参照し、隠しファイルが表示されていることを確認します
3)簡単なテキストエディターで.classpathを開く
4)一番下のエントリをコピーします。たとえば、私の現在のプロジェクトでは、<classpathentry path="/home/natalie/.ivy2/cache/org.scalatest/scalatest_2.9.1/jars/scalatest_2.9.1-1.8.jar" kind="lib"></classpathentry>
5).ivyフォルダーに移動してキャッシュし、sbt経由で追加したライブラリに移動します
6)jarファイルを右クリックし、プロパティを選択し、パスとjarファイル名をコピーして、手順4でコピーしたエントリで置き換えます
7).classpathを保存する
8)Eclipseでプロジェクトを開く
Eclipseで新しい依存関係が利用可能になりました。