Netbeans プロジェクトでJET (Java Emitter Templates)を使用したかった のですが、JET が Eclipse ライブラリに大きく依存していることを知る必要がありました。
JET に似たものがありますが、スタンドアロン プロジェクトとしてのものはありますか?
オープンソースでよく管理されているものは?
さらに、「コード生成」はそのようなツールの一般的な用語ですか?
Netbeans プロジェクトでJET (Java Emitter Templates)を使用したかった のですが、JET が Eclipse ライブラリに大きく依存していることを知る必要がありました。
JET に似たものがありますが、スタンドアロン プロジェクトとしてのものはありますか?
オープンソースでよく管理されているものは?
さらに、「コード生成」はそのようなツールの一般的な用語ですか?
Maven を使用している場合は、maven-jet-pluginで JET テンプレートを使用できます。
これがソースコードのようです。そして、ここにドキュメンテーションがあります。
積極的にメンテナンスされているわけではありませんが、うまく機能し、JET 仕様に準拠しています。テンプレートとスケルトンで使用しました。
自己完結型であり、Eclipse に依存せず、プロジェクトに推移的な依存関係を導入しません。
私の知る限り、JET は JSP のようなものですよね?
Java エミッタ テンプレートは、Java Server Pages (JSP) と非常によく似ています。JET と JSP はどちらも同じ構文を使用し、バックグラウンドで Java にコンパイルされます。両方とも、モデルとコントローラーからページをレンダリングする責任を分離するために使用されます。どちらも、渡されたオブジェクトを入力引数として受け入れ、コード内に文字列値を挿入でき (「式」)、Java コードを直接使用してループを実行したり、変数を宣言したり、論理フローを実行したりできます (「スクリプトレット」)。どちらも、詳細のカスタマイズをサポートしながら、生成されたオブジェクト (Web ページ、Java クラス、またはファイル) の構造を表すのに適した方法です。JET は、いくつかの重要な点で JSP と異なります。JET では、マークアップの構造を変更して、さまざまな言語でのコードの生成をサポートすることができます。通常、JET への入力は構成ファイルであり、ユーザー入力ではありません (ただし、これを禁止するものは何もありません)。また、通常、JET 処理は特定のワークフローに対して 1 回だけ実行されます。これらは技術的な制限ではなく、まったく異なる JET の用途を見つけることができます...
ibm.com
これらのタイプのツールの「テンプレート エンジン」を探してください。
あなたが見たいと思うかもしれないカップル:
最終的にERB (Ruby のテンプレート エンジン)を使用することになりました。
Netbeans でうまく動作します!
ERB を呼び出してソース ファイルを生成するカスタム ant タスクを定義します (その結果は、バージョン管理されていない特別なディレクトリ内に配置されます)。
Ant タスクは、Netbeans の「-pre-compile」タスクをオーバーライドしています。