web-dev-qa-db-ja.com

すべての新しいIntelliJに「scala-library * .jar」はありませんScala Project

Ubuntu 16.04LTSにscalaプラグインを使用してintelliJ-IDEA 2017.2.5をインストールしました。新しいscalaプロジェクトを作成して実行しようとすると、次のようになります。

Error:scalac:ScalaコンパイラクラスパスScala SDK SBT:org.scala-lang:scala-library:に 'scala-library * .jar'がありません: 2.12.4:jar

[プロジェクト構造]> [ライブラリ]に移動し、ライブラリを削除して再度追加することで修正できます。

デフォルトのライブラリを変更する方法があるので、新しいプロジェクトを作成するたびにこれを行う必要はありませんか?

37
motek96

Sbt 1.0.2を使用している場合、この問題はsbtのバグが原因である可能性があります。 sbt 1.0.3の修正が予定されています。

関連する問題:

考えられる回避策:

  • configure Scalaバージョン2.12.3
  • またはsbt 0.13.16にダウングレードします
38
CrazyCoder

Idea SBT設定で「ビルドとインポートにSBTシェルを使用」チェックボックスを選択します。役立つかもしれません。

17
vnd

私の場合、IntelliJオプションを介してScalaプラグインをアップグレードするとうまくいきました。

修正された問題に関連している可能性があります。

[設定]に移動し、Scalaでフィルターします。 (プラグイン-Scala)更新をクリックします。 IntelliJを再起動します。

1
Fernando

scala 2.12.2から2.12.3に修正)からの切り替え私にとって。

私もIntelliJ 2017.2.4を使用してこの問題を抱えていました。僕の build.sbt(「play-scala-starter-example」プロジェクトから派生)に含まれるもの:

scalaVersion := "2.12.2"

これを次のように変更しました。

scalaVersion := "2.12.3"

そして、「プロジェクトの更新」を完了しました。

最新のScala SDK:scala-sdk -2.12.File-> Project Structure-> Modules、select 「ルート」タブと「依存関係」タブ、次にライブラリを追加)、それをクラスパスのほぼ最初の位置に移動し、SBTを渡しました:org.scala-lang:scala-library:---(2.12.2:jar途中です。クラスパスの先頭にある「Scalaコンパイラクラスパス...にある 'scala-library * .jar'がありません」というメッセージは消えました。

1

Sbt 1.0.3およびScala 2.12.4で2017.3.3を2017.3.4にアップグレードしました。基本的に、同じs *#tを繰り返します。私の場合、プロジェクトの再構築後に各モジュールに対して「scala sdkなしでscalaファイルをスキップしています」という警告が表示されました。

ただし、それは更新中のsbtプロジェクトopenのみの問題でしたが、他のプロジェクトはその後正常に機能しました。壊れたプロジェクトの場合、私はついにgitからチェックアウトバージョンを取得しました(「キャッシュを無効にする」などの手間がかかりました)。

したがって、これらの手順により将来のトラブルを回避できる可能性があります。

  1. 関連するプロジェクト構成ファイルをVCに追加します
  2. プロジェクトをコミット
  3. プロジェクトを閉じる
  4. アップグレード
0
Tupolev._