12

scala/maven/Eclipse を使用するようにプロジェクトを構成しました。ビルド パスに scala ライブラリが必要で、scalatest も独自の scala ライブラリを使用しているため、次の警告が表示されます。

ビルド パスに複数の scala ライブラリが見つかりました。すべて互換性のあるバージョンです。これは最適な構成ではありません。ビルド パス内の scala ライブラリを 1 つに制限してみてください。

Maven用とEclipse用の両方のライブラリが必要なため、この警告を削除できるとは思いません。特に問題はないようですので、このままでいいのでしょうか?Maven と Eclipse 用の scala ライブラリを 1 つだけ使用する代替構成はありますか?

プロジェクトから scala ライブラリを削除すると、次のエラーが表示されます。

クラスパスに Scala ライブラリが見つかりません。ビルド パスを確認してください。

何らかの理由で、Eclipse では、Maven の依存関係として既に利用可能であるにもかかわらず、ビルド パス上に scala ライブラリが必要です。

4

2 に答える 2

10

心配する必要はありません。Eclipse は、クラスパスに複数の があることを警告しますがscala-library.jar、それらが同じバージョンである限り問題ありません。

それらの 1 つが異なる場合 (たとえば、ファイル内の Scala のバージョン番号を変更するpomことによって)、問題が発生します。クラスパスの順序に応じて、IDE はいずれかからクラスを取得し、異なる結果になる可能性があります。コマンドラインでビルドした場合の結果。

セットアップに戻ると、次のことができます

  • Eclipse プロジェクトからクラスパス コンテナーを削除し、Scala Librarymaven が追加する jar だけを残します。
  • 警告を無視する
于 2012-12-03T16:20:05.353 に答える
0

ここで推測してみると、Scala 2.9 がプリインストールされた Eclipse Indigo と対応する Scala プラグインを使用していますか? それがそのライブラリを使用する必要がある理由である場合は、おそらく Eclipse Juno の使用を検討してください。それは私が使用しているもので、マイルストーンと夜間ビルドの両方で非常にうまく機能します

于 2012-12-03T15:28:44.320 に答える