IntelliJ IDEA 2020.1ヘルプ

sbt

既存のsbtプロジェクトを開く

  1. 現在IntelliJ IDEAでプロジェクトを開いていない場合は、ようこそ画面でオープンまたはインポートをクリックします。それ以外の場合は、メインメニューからファイル | 開くを選択します。

  2. 開いたダイアログで、sbtプロジェクトの説明 build.sbtを含むファイルを選択します。OKをクリックします。

  3. 表示されたダイアログで、プロジェクトとして選択をクリックします。

    IntelliJ IDEAはIDEでsbtプロジェクトを開いて同期します。プロジェクトを開いたときにインポートオプションを調整する必要がある場合は、sbt設定を参照してください。

sbtおよびScalaバージョンの互換性を確保する

多くの場合、プロジェクトをチーム間で共有し、特定のバージョンのsbtを使用する必要があります。プロジェクトの build.properties ファイルでsbtバージョンをオーバーライドできます。

  1. sbtプロジェクトを作成または開きます。

  2. プロジェクトツールウィンドウのソースルートディレクトリで、build.properties ファイルを見つけてエディターで開きます。

  3. エディターで、プロジェクトで使用するsbtのバージョンを明示的に指定します。
    sbt.version=xxx
  4. プロジェクトを再インポートします。(sbtツールウィンドウで icons actions refresh をクリックします。)

sbtプロジェクトの構造

sbtプロジェクトを作成またはインポートすると、IntelliJ IDEAは次のsbt構造を生成します。

  • プロジェクトを定義し、build.sbt ファイル、src、およびターゲットディレクトリ、モジュールを含むsbtプロジェクト(適切なビルド)。通常のプロジェクトに関連するものすべて。

    Project tool window

  • projectサブディレクトリに定義されているsbt build project。ビルド定義の一部である追加のコードが含まれています。

    sbt source root

  • 実行可能なsbtタスク、コマンド、および設定を含むsbtツールウィンドウ。

    sbt tool window

sbtプロジェクトを管理する

ZZBプロジェクトでは、build.sbt ファイルを使用してプロジェクトに主な変更を加えます。IntelliJ IDEAはsbt構成を唯一の実態ソースと見なしているためです。

エディターで build.sbt を手動で変更するたびに、変更をロードする必要があります。IntelliJ IDEAは、プロジェクトのsbtの変更を読み込むCtrl+Shift+O)に対して提案された通知アイコンをエディターの右側に表示します。

build.sbt file: Load sbt Changes

VCSの変更とIDE外のビルドファイルに加えられた変更は、自動的に再ロードされます。これらの変更のリロードプロセスを手動で制御する必要がある場合は、sbtツールウィンドウにある Auto-reload external changes オプションを無効にします。

  1. build.sbtを開きます。

  2. 次のコードを指定します。
    val localDep = RootProject(file("/path/to/project"))

    この場合のlocalDep は、ファイルシステムのどこかにあるプロジェクトであり、モジュールとしてインポートされます。

  3. プロジェクトをリフレッシュします。( sbtツールウィンドウで icons actions refresh をクリックします。)
    IntelliJ IDEAは、追加されたプロジェクトをプロジェクトツールウィンドウとsbtツールウィンドウに表示します。

サブプロジェクトまたはモジュールをsbtプロジェクトに追加する

  1. エディターで build.sbt を開きます。

  2. 指定、例:
    lazy val sampleModule = (project in file("sampleModule"))

    この場合の"sampleModule" は、追加するサブプロジェクトです。複数のサブプロジェクトを指定できます。

  3. プロジェクトを再インポートします。( sbtツールウィンドウで Reimport project をクリックします。)
    IntelliJ IDEAは、適切な情報を含むサブプロジェクトディレクトリを生成し、プロジェクトsbtツールウィンドウの両方に表示します。

サブプロジェクトを更新する

Scalaのバージョンを変更したときにサブプロジェクトを自動的に更新するには、各サブプロジェクトに commonSettings および settings メソッド呼び出しを指定します。

  1. build.sbtを開きます。

  2. たとえば、次のコードを指定します。
    lazy val commonSettings = Seq( organization := "com.example", version := "0.1.0-SNAPSHOT", scalaVersion := "2.12.6" ) lazy val moduleSample = (project in file("moduleSample")) .settings( commonSettings )

    適切なScalaバージョンが、サブプロジェクトの依存関係として、プロジェクト ツールウィンドウのサブプロジェクトのディレクトリとsbtツールウィンドウに追加されます。

ライブラリをsbtプロジェクトに追加する

build.sbt ファイルを介してsbt依存関係(英語)を追加するか、.scala ファイルで import ステートメントを使用できます。

  1. エディターで .scala ファイルを開きます。

  2. インポートするライブラリを指定します。

  3. キャレットを未解決のパッケージに置き、Alt+Enterを押します。

    sbt add dependency via import

  4. 使用可能なインテンションアクションのリストから、sbt依存関係を追加するを選択します。

  5. ウィザードの指示に従って、完了をクリックします。

    IntelliJ IDEAはアーティファクトをダウンロードし、build.sbt ファイルとsbtツールウィンドウに依存関係を追加します。

sbtシェルを使用する

sbtシェルはsbtプロジェクトに組み込まれており、プロジェクトの開始時に利用できます。sbtコマンドとタスクの実行、プロジェクトの実行とデバッグにsbtシェルを使用できます。

  • sbtシェルを開始するには、Ctrl+Shift+S(Windowsの場合)または ⌘+⇧+S (Mac OS Xの場合)を押します。または、画面の下部にあるツールバーのsbt shellをクリックします。

  • ビルドおよびインポート手順にsbtシェルを使用するには、sbt設定にあるsbtシェルを使用するセクションを選択し、sbtシェルを使用してScalaアプリケーションを実行するセクションで説明されている手順を実行します。
  • デバッグにsbtシェルを使用するには、「sbtシェルを使用したデバッグ」のセクションを参照してください。

  • sbtシェルからテストを実行するには:
    1. 実行/デバッグ構成(実行 | 構成の編集)を開きます。

    2. テスト設定を作成し、利用可能な設定からuse sbtオプションを選択します。

sbtタスクを実行する

  • sbtツールウィンドウのsbt Tasksディレクトリから必要なタスクを選択することにより、sbtタスクを実行できます。

  • sbtシェルに手動でタスク(コード補完がサポートされている)を手動で入力し、そこから直接実行することができます。

  • タスクの実行構成を作成できます。例: sbtツールウィンドウにあるタスクのリストの一部ではないカスタムタスクを作成できます。
    1. Shift+Alt+F10 を押して、実行構成を開きます。

    2. 実行構成設定を指定し、OKをクリックします。必要に応じて、構成を実行する前に実行する別の構成またはタスクを追加できます。起動前セクションの the Add icon をクリックし、表示されるリストから実行する必要があるものを選択します。

  • 集中モードで作業する場合(ツールバーとツールウィンドウなし)、なんでも実行ウィンドウからsbtタスクまたはコマンドを実行できます。 Ctrl を2回押して開き、コマンドを入力して Enterを押します。

IntelliJ IDEAはsbtシェルウィンドウに結果を表示します。

sbt設定を操作する

sbt設定を使用して、sbtプロジェクト、sbtバージョン、プロジェクトの変更のインポートなどのビルドおよび実行アクションを構成します。

sbt設定にアクセスする

  1. 設定/環境設定ダイアログ Ctrl+Alt+Sで、ビルド、実行、デプロイ | sbtに移動します。
  2. sbt設定ページで、次の注目すべきアクションを設定します。
    • build.sbtを変更するたびにsbtが自動的にプロジェクトをリフレッシュするようにするには、ビルド・スクリプト・ファイルの変更時に、このプロジェクトを自動的にインポートするを選択します。

    • 実行中のビルドをsbtシェルを使用する横のsbtに委譲するには、インポートオプションとビルドオプションを選択します。

    • sbtシェルを介してコードをデバッグするには、sbtシェルツールウィンドウでデバッグボタン icons actions startDebugger を有効にするsbtシェルのデバッグを有効にするオプションを選択します。

      デバッグの詳細については、sbtを使用したデバッグを参照してください。

    • プロジェクトの .ivy キャッシュの場所を変更するか、他のsbtプロパティ(英語)を設定するには、VM パラメーターフィールドを使用します。

  3. 変更を保存するには、OKをクリックします。

最も一般的なsbtの課題と回避策を確認するには、sbtのトラブルシューティングのセクションを参照してください。

最終更新日: 2020年6月29日

関連ページ:

新規プロジェクトの作成

このセクションでは、すぐに使用できる機能について説明します。フレームワークプラグインを使用している場合は、セクション言語およびフレームワーク固有のガイドラインを参照してください。IntelliJ IDEAを起動してください。ようこそ画面が開いたら、新規プロジェクトの作成をクリックします。それ以外の場...

sbt

このページを使用して、sbtプロジェクトの設定を構成します。一般設定JVMこの領域を使用して、JVM設定を構成します。次のオプションから選択できます。JRE: プロジェクトで使用するJDKを選択します。デフォルトでは、IntelliJ IDEAはプロジェクトのJDKを使用します。最大ヒープ・サイズ、...

Scalaの実行、デバッグ、テスト

IntelliJ IDEAは、通常IntelliJ IDEAの他のアプリケーションと同様に、Scalaアプリケーションを実行、デバッグ、テストすることができます。IntelliJ IDEAでは、Scalaコードをカバレッジで実行し、コードカバレッジの設定を行うこともできます。実行中またはデバッグ中の...

Scalaの一般的な課題のトラブルシューティング

プロジェクトの作業中に発生する可能性のあるコンパイラ、パフォーマンス、またはコード強調表示の課題を解決するのに役立つ、最も一般的な scala/sbt の質問に関する次の回答を確認してください。コードが正しく強調表示されないのはなぜですか?:タイプ認識の強調表示が正しいコードを強調表示している場合は...

BSPサポート

Build Server Protocol(BSP)は、sbtやミルなどのビルドツールがIDEとやり取りするための標準的な方法を定義し、プロジェクトのインポート、コンパイルおよびその他のタスクの実行、エラーメッセージの取得、IDEでの更新の直接進行を可能にします。IntelliJ IDEA用のSca...