DMDL Editorプラグイン¶
この文書ではEclipseのDMDL Editorプラグインを紹介します。
DMDL Editorプラグインとは¶
DMDL EditorX は ひしだま氏が開発しているOSSのEclipseプラグインで、DMDLスクリプトファイルに関する編集機能 [1] を追加します。
まだ開発途上ですが、DMDLの編集が便利になります。
- DMDLスクリプトのキーワードに色が付きます。
- 別のデータモデルを参照しているデータモデルにおいて、参照元データモデルへジャンプすることが出来ます。
- GradleやMavenを使わずにEclipse上でDMDLスクリプトのコンパイルを行い、Javaのデータモデルクラスを生成することが出来ます。(現在は Shafu で行うことが出来ます)
- Javaソース上のデータモデルのクラス名あるいはメソッド名からDMDLスクリプトファイルへジャンプすることが出来ます。
[1] | 機能やインストール手順の詳細については、 DMDL EditorX のサイトを確認してください。 |
DMDL Editorプラグインのインストール¶
前提条件¶
DMDL Editorプラグインを利用するには、Eclipse環境に Xtext がインストールされている必要があります。
Jinrikisha バージョン 0.10.4 に同梱されているEclipseにはXtextが含まれていますが、異なるEclipse環境を利用する場合、必要に応じてXtextをインストール [2] してください。
[2] | Xtextのインストールについては、 Xtextのダウンロードサイト などを確認してください。 |
インストール手順¶
- Eclipseを起動します。
- Eclipseのメニューバーの ヘルプ(Help) から 新規ソフトウェアのインストール(Install New Software) を選択し、インストールダイアログを開きます。
- 作業対象(Work with) の右側にある 追加(Add) ボタンを押して以下のリポジトリの情報を入力し、 OK ボタンを押します。
項目 | 説明 |
---|---|
名前(Name) | サイトの名前(例: dmdl-editor ) |
ロケーション(Location) | https://hishidama.github.io/xtext-dmdl-editor/site/ |
- 名前(Name) に表示されている DMDL EditorX にチェックを入れます。
- 次へ(Next) ボタンを押していき、最後に 完了(Finish) ボタンを押すと DMDL Editorプラグインがダウンロード・インストールされます。
- Eclipseを再起動します。
Note
DMDL EditorXはXtextの機能を使っており、DMDL EditorXを使用するEclipseプロジェクトでXtextが有効になっている必要があります。 (通常のJavaプロジェクトではパッケージエクスプローラー上のプロジェクトのアイコンにJマークが付いていますが、Xtextが有効になっているとXマークに変わります) DMDL EditorXのインストール後、dmdlファイルを初めて開いた時などにXtextネイチャーがEclipseプロジェクトに登録され、Xtextが有効になります。
Tip
Shafu の Eclipseプロジェクト情報の再構成 や gradlewコマンド でEclipseプロジェクト情報を再構成すると、Xtextネイチャーの情報がクリアされ、Xtextに依存した機能が使えなくなります。 この場合は、いずれかのDMDLスクリプトファイルを新規に開く(開いている場合は一旦閉じてから再度開く)と再び使えるようになります。
Tip
Asakusaアプリケーションのbuild.gradleに以下の定義を追加しておくと、Eclipseプロジェクト情報の再構成を行ってもXtextネイチャーの情報がクリアされなくなります。
eclipse {
project {
natures 'org.eclipse.xtext.ui.shared.xtextNature'
}
}
DMDL Editorプラグインの機能の紹介¶
DMDL EditorXには色々な機能がありますが、簡単に役立つものを紹介します。
参照元データモデルへのジャンプ¶
別のデータモデルを参照しているデータモデルにおいて、参照元データモデルの定義場所へジャンプする機能です。
例えば以下のような集計モデルのモデル定義において、 Ctrl
キーを押しながら joined_sales_info
をマウスでクリックすると、joined_sales_infoが定義されているモデルの定義行へジャンプします。
summarized category_summary = joined_sales_info => {
...
}
DMDLのコンパイル¶
DMDLのコンパイルを行う機能です。
Note
通常は GradleやMavenのコマンドでDMDLのコンパイル を行ってJavaのデータモデルクラスを生成しますが、 DMDL EditorXではGradleやMavenを使わずにコンパイルすることが出来ます。
ツールバーの「DMDL compile」のアイコンをクリックすると、コンパイルが実行されます(コンソール上にコンパイルメッセージが表示されます)。
Note
現在は Shafu でDMDLのコンパイルを行うことが出来ますが、DMDL EditorXでコンパイルを行うと、DMDLスクリプトファイルにエラーがあった場合にEclipseの 問題ビュー にエラー内容が表示されます。そこからエラー箇所へジャンプすることも出来ます。
JavaソースからDMDLへのジャンプ¶
Javaのソースコード上のデータモデルのクラスやメソッドから定義元のDMDLへジャンプする機能です。
例えば以下のような演算子クラスのソースコードにおいて、 ErrorRecord
(データモデルのクラス名)や setMessageAsString
(データモデルのメソッド名)を Ctrl
キーを押しながらマウスでクリックすると、ジャンプ先の選択肢が表示されます。
ここで「 Open DMDL 」を選ぶとDMDLスクリプトファイルへジャンプします。
@Update
public void setErrorMessage(ErrorRecord record, String message) {
record.setMessageAsString(message);
}