Java GWT发生器排序

Java GWT发生器排序,java,gwt,generator,Java,Gwt,Generator,如果我使用GWT生成器框架生成源代码,那么如何确保一个生成器先于另一个生成器运行 e、 例如,如果我正在生成uibinder代码,如何确保我的生成器在uibinder之前运行?我猜您的生成器类必须在其他生成器触发类之前编译 我建议在依赖模块中包含生成的包,或者在uibinder文件之前编译生成的类文件 在您的示例中,MyGenerator.java将在编译阶段位于MyView.java之前。您不必确保它。发电机的工作原理如下。 调用generate方法时,generator可能会返回新类的名称并

如果我使用GWT生成器框架生成源代码,那么如何确保一个生成器先于另一个生成器运行


e、 例如,如果我正在生成uibinder代码,如何确保我的生成器在uibinder之前运行?

我猜您的生成器类必须在其他生成器触发类之前编译

我建议在依赖模块中包含生成的包,或者在uibinder文件之前编译生成的类文件


在您的示例中,MyGenerator.java将在编译阶段位于MyView.java之前。

您不必确保它。发电机的工作原理如下。 调用generate方法时,generator可能会返回新类的名称并创建新源。在此之后,GWT将尝试预编译新创建的源代码。如果新类包含GWT.create,它将重新绑定到某个生成器,那么也将调用此生成器


例如,在您的情况下,您的生成器必须创建一个java类(使用普通uibinder内容)和*.ui.xml文件。当GWT开始预编译新创建的类时,它最终将调用UiBinder生成器

你能举个例子吗?生成器在GWT.create()上运行,因此让一个生成器生成GWT.create()将调用另一个生成器。如果一个生成器依赖于另一个生成器生成的其他代码,我认为您有问题;重构代码,使两个生成器都可以生成公共代码,而不是依赖于排序。