MPS 2020.3 ヘルプ

IntelliJ IDEA 言語プラグインの構築

それで、一連の言語を作成しました、IntelliJ IDEA の中の Java 開発者に利用可能にしたいです。この文書では、おそらくそれらが依存するランタイムと共に、一連の言語を有効な IntelliJ IDEA プラグインにパッケージする方法を見ていきます。

ビデオが好きですか? それなら IntelliJ IDEA 言語プラグイン作成のトピックを網羅するスクリーンキャスト(英語)もぜひ参照してください。

注: MPS に付属の JavaExtensionsSample サンプルプロジェクトには、サンプルの Java 拡張機能をビルドしてプラグインにパッケージ化するための完全に機能的なビルドスクリプトが含まれています。そこからインスピレーションを受けることができます。

出発点

あなたの言語を構築したと思い、今それは世界と共有する時です。他の人がつかむためにサーバーにアップロードすることができる良い zip ファイルを得るために従う必要があるいくつかのステップがあります。

簡単に言うと:

  • ビルドスクリプトを作成する (手動またはウィザードを介して)

  • Ant ビルド xml ファイルを生成する

  • ANT の実行

  • 生成されたファイルを選んで共有する

それでは、さらに詳しく説明します。あるいは、IntelliJ IDEA 言語プラグインの使用と同様に構築のトピックをカバーする私たちの新しいスクリーンキャストを試してみるのが好きかもしれません。

ビルドスクリプトを作成する

まず最初に、新しく作成したビルドソリューションで新しいビルドスクリプトを作成する必要があります。ウィザードを使用するか、ビルド記述を手動で作成するという 2 つの選択肢があります。

ウィザードを使う

ソリューションの構築ウィザードを使用して、ソリューションを生成できます

Build1

ウィザードは、新しいビルドスクリプトを既存のソリューションの一部にするかどうか、または新しいものを作成するかどうかを確認します。

Build2

モデルは新しいソリューション内に作成する必要があります。

Build3

結果を MPS プラグインと IntelliJ IDEA プラグインのどちらとしてパッケージ化するかを指定することもできます。

Build5

最後に、ビルドスクリプトに含める言語とソリューションを選択します。

Build6

生成されたビルド記述スクリプトは次のようになります。

Build7

手動によるアプローチ

プロセスをより細かく制御するために、代わりにビルドスクリプトを自分で作成することもできます。最初に既存のソリューションを選択するか、新しいソリューションを作成する必要があります。プロジェクトの論理ビューのルートで、右クリックして新しいソリューションを選択します。ソリューションが存在したら、その中に新しいモデルを作成します。モデルには、使用言語 として jetbrains.mps.buildjetbrains.mps.build.mps がリストされている必要があり、依存関係 として jetbrains.mps.ide.build がメンションされている必要があります。

Build12

Build13

ソリューションとモデルを準備したら、ポップアップメニューから新しいビルドプロジェクトを作成できます。

Build14

ビルドスクリプトを編集する

どちらの方法でもビルドスクリプトを作成しました。今度はビルドの説明を編集します。あなたの言語とソリューションを IntelliJ IDEA プラグインとしてパッケージ化することができるようにするためには、次のようなスクリプトを早急に入手してください。

Build8

両方の依存関係のアーティファクトの場所を定義することが重要です。IDEA 依存関係は、IntelliJ IDEA インストールの場所を知る必要があります。mpsPlugin の依存関係では、MPS コア IDEA プラグインの場所を知る必要があります。プラグインを追加して IntelliJ IDEA 内で MPS を有効にすると、通常は IntelliJ IDEA インストールフォルダー / プラグインフォルダーに配置されます。または、プラグインがユーザーのホームフォルダーの IntelliJ IDEA 設定フォルダー /config/plugins にインストールされている場合もあります。

ビルド言語機能の詳細についてはビルド言語をチェックしてください。

Ant ビルド xml ファイルを生成する

ビルドスクリプトを用意して、今 Ant の build.xml ファイルを生成することができます。ビルドソリューションを再構築するだけで、次の図に示すように、ビルドスクリプトのプロパティで指定した場所にファイルが生成されます。

Build11

生成された build.xml ファイルは次のように開始する必要があります。

Build10

生成されたスクリプトで artifacts.IDEAartifacts.mpsPlugin の特性に注目してください。コマンドラインからスクリプトを実行するときは、IntelliJ IDEA のインストールと MPS コアプラグインの場所をそれぞれ指すようにする必要があります。

上記のスクリプトでは、マクロ$idea_home および $plugins_home)を介して両方のアーティファクトの場所を設定するため、代わりにこれらのプロパティを設定できます(ビルドマシン上の場所がビルドスクリプトで設定されたパスと異なる場合にのみ必要です)。

ANT の実行

ビルドを実行してプラグインを入手する時が来ました。繰り返しになりますが、2 つの選択肢があります - MPS 内に留まるか、コマンドラインを使用するかのいずれかです。

MPS 内から

プロジェクトビューでビルドノードを右クリックして実行を選択します。

Build9

生成されたアーティファクトは、ベースとして指定したフォルダー内のビルドフォルダーに配置されます。

コマンドラインから

コマンドラインから build.xml ファイルが配置されているフォルダーに移動し、ant を実行する必要があります。ビルドマシン上の MPS コアプラグインと IntelliJ IDEA の場所が、ビルドスクリプトで設定されたパスと異なる場合は、コマンドラインで実際の場所を指定する必要があります ant -Dartifacts.mpsPlugin = "..." -Dartifacts.IDEA = " ... "。私たちの例であるため、MPS コアプラグインにポイントに IntelliJ IDEA インストールフォルダーと $plugins_home にポイントに $idea_home を使用する上で、代わりに、コマンドライン上の theese プロパティの値を変更することができます。ant -Didea_home =「アイデアへのパス」-Dplugins_home = "MPS コアプラグインへのパス "

このステップは、MPS またはコマンドラインのどちらからスクリプトを実行しても、必要なすべての jar ファイルを含む zip ファイルを生成します。これは、ビルドスクリプトのレイアウトセクションで指定したとおりです。IntelliJ IDEA プラグインのデフォルトレイアウト。

生成されたファイルを選んで共有する

生成されたファイルをプラグインとして追加できるように、IntelliJ IDEA ユーザーに配布する必要があります。IntelliJ IDEA で使用するためのプラグインをインストールする方法の詳細な説明については IntelliJ IDEA 内で MPS を使用するをチェックしてください。

関連ページ:

ビルド言語

ビルド言語は、宣言的な方法でビルドを定義するための拡張可能なビルド自動化 DSL です。Ant に生成され、Ant の実行機能を活用しながら、ソースをクリーンに保ち、雑然とした無関係な詳細を排除する: 下部に ANT がある MPS 言語のスタックとして編成されているため、ビルド手順の各部分を異なる抽象化レベルで表現できます。言語規則に従えば、複雑なアーティファクト(MPS プラグインなど)の構築を 1 行のコードで指定できますが、同時に、ファイル管理やファイル管理などの詳細をさらに深く掘り下げて...

IntelliJ IDEA 内で MPS を使用する

このドキュメントでは、IntelliJ IDEA 内で MPS 言語を使用する方法を説明します。このトピックを網羅するスクリーンキャストをチェックアウトするのを好むかもしれません。注: IntelliJ があることを確認してくださいインストールされています。Community と Ultimate Edition の両方が機能します。MPS コア IntelliJ IDEA プラグインを入手:MPS ダウンロードページから MPS IntelliJ IDEA プラグインをダウンロードするか、In...

MPS と ant の使い方

MPS と ant を使った作業:もちろん、コードを編集するには MPS エディターが必要です。しかし、モデルの生成と実行中のテストは、コマンドラインから実行して自動と統合できますビルドします。Ant がベースとして使用されます。このセクションでは、MPS の使用方法について説明しますコマンドラインから ant 経由で。すべての例で、を定義する build.properties ファイルを使用します。次の 2 つのプロパティ:mps.home = // installation directory...