JvmModelInferrer アプローチを使用して、入力ファイルからクラスを生成する単純で小さな DSL を実装しました。通常のJavaプロジェクトのコード内でパーサーとコードジェネレーターを呼び出す方法を見つけようとしています。したがって、Xtext 以外のプロジェクトのメイン クラスのある時点で、ファイルを作成し、それを DSL の Xtext パーサー/codeGenerator に渡すだけで、選択したフォルダーにクラス ファイルが生成されます (私のJavaプロジェクト内)。このケースはドキュメントではカバーされていません。
更新:これまでの私のコードは次のようになります。
private static IGenerator generator;
/**
* @param args
*/
public static void main(String[] args) {
// this line registers the EMF for our DSL
Injector injector = new HyRuleStandaloneSetup().createInjectorAndDoEMFRegistration();
ResourceSet rs = new ResourceSetImpl();
File file = new File(
"C:/Documents and Settings/chmamat2/runtime-EclipseXtext/hyrule.project/src/hyrule/project/main.hrule");
Resource resource = rs.getResource(URI.createURI(file.toURI().toString()), true);
//setup the generator
generator = injector.getInstance(IGenerator.class);
//setup the file system access
final EclipseResourceFileSystemAccess2 fsa = new EclipseResourceFileSystemAccess2();
generator.doGenerate(resource, fsa);