Java 如何等待com.sun.codemodel.JCodeModel.build()完成

Java 如何等待com.sun.codemodel.JCodeModel.build()完成,java,code-generation,sun-codemodel,Java,Code Generation,Sun Codemodel,我正在使用com.sun.codemodel.JCodeModel为每个类生成近1000个带有相关JUnit的类 我还生成了一个JUnit测试套件,用于执行各个JUnit测试用例 为了完成这个代码生成项目,我想使用final Result=JUnitCore.runClasses(AllTests.class)以编程方式执行JUnit测试套件 我遇到的困难是JUnit测试套件的执行与代码生成不同步。我需要能够检测com.sun.codemodel.JCodeModel.build()方法何时完成

我正在使用
com.sun.codemodel.JCodeModel
为每个类生成近1000个带有相关JUnit的类

我还生成了一个JUnit测试套件,用于执行各个JUnit测试用例

为了完成这个代码生成项目,我想使用
final Result=JUnitCore.runClasses(AllTests.class)以编程方式执行JUnit测试套件

我遇到的困难是JUnit测试套件的执行与代码生成不同步。我需要能够检测
com.sun.codemodel.JCodeModel.build()
方法何时完成了代码生成,然后才执行JUnit测试套件


我如何知道
com.sun.codemodel.JCodeModel.build()
方法何时完成?

通过JCodeModel扩展类,然后重写build方法:

@override
... build(){
super.build();
startTest();
}

然后它应该在构建功能完成后启动。

谢谢您的建议。然而,这并不能解决我的问题,因为我不仅需要等到所有生成的类都构建好了,还需要编译它们。我在eclipse中执行这个项目;看起来我要么需要以编程方式引用eclipse项目(并等待或等待完成),要么放弃手动运行测试套件您可以手动启动编译器。。。JavaCompiler=ToolProvider.getSystemJavaCompiler();run(null,null,null,sourceFile.getPath());您是如何执行与JUnit测试相关的JCodeModel代码生成的?