如何使用与jOOQ代码生成和Maven自定义的策略?(How to use a custom str

2019-07-29 03:59发布

随着jOOQ ,我可能想用结合使用Maven jOOQ代码生成器和一个自定义的生成策略 。 看起来好像这可以这样做(留出不相关的部分):

<plugin>
  <groupId>org.jooq</groupId>
  <artifactId>jooq-codegen-maven</artifactId>
  <version>2.2.2</version>

  <!-- The plugin should hook into the generate goal -->
  <executions>
    <execution>
      <goals>
        <goal>generate</goal>
      </goals>
    </execution>
  </executions>

  <configuration>
    <generator>
      <name>org.jooq.util.DefaultGenerator</name>
      <!-- But the custom strategy is not yet compiled -->
      <strategy>
        <name>com.example.MyStrategy</name>
      </strategy>
    </generator>
  </configuration>
</plugin>

根据上述结构,描绘了该问题。 jOOQ的代码生成挂接到Maven的生命周期,这发生在生命周期的编译目标之前的生成目标。 对于代码生成,但它需要一个预编译的定制策略类,或者我会得到一个ClassNotFoundException 。 这怎么可能与Maven解决? 我可以在执行之前编译单个类generate的目标?

Answer 1:

一个更好的解决方案是将项目分成两个模块。 其中包含了策略,将另外的休息。

使用模块,你可以编译策略在一个独立的步骤,然后使用该模块中的插件:

<plugin>
  <groupId>org.jooq</groupId>
  <artifactId>jooq-codegen-maven</artifactId>
  <version>2.2.2</version>

  ...your config goes here...

  <dependencies>
    list your strategy module here
  </dependencies>
</plugin>


文章来源: How to use a custom strategy with the jOOQ code-generator and Maven?