Java 将子项目添加到要在jooq codegen maven中使用的maven项目中

Java 将子项目添加到要在jooq codegen maven中使用的maven项目中,java,maven,gradle,jooq,Java,Maven,Gradle,Jooq,我有一个Gradle项目,其中有一个子项目名为generator。 子项目已添加到gradle.setting文件中的我的主项目中: include 'generator' 我的子项目有一个build.gradle文件,该文件定义为: apply plugin: 'java' dependencies { compile("org.jooq:jooq-codegen:${gradle.ext.jooqVersion}") compile "srvg.libs:jooq_utils:1

我有一个Gradle项目,其中有一个子项目名为generator。 子项目已添加到gradle.setting文件中的我的主项目中:

include 'generator'
我的子项目有一个build.gradle文件,该文件定义为:

apply plugin: 'java'

dependencies {
  compile("org.jooq:jooq-codegen:${gradle.ext.jooqVersion}")
  compile "srvg.libs:jooq_utils:1908-VBI-580.1.+"
}

sourceSets {
  main {
    java {
      srcDirs = ['src/main/java']
    }
  }
}
正如您所见,没有项目工件名称或版本等,只是定义了依赖项

现在,不管出于什么原因,我必须将这个项目转换为maven nature。我为我的主项目生成一个pom,但是这个子项目呢

我知道我可以将它作为一个模块添加到我的主项目中,但它不适合我,因为我的主项目包装是Jar,应该保持原样。但要为项目提供模块,它应该是Pom包装

目前,我已通过助手插件将我的子项目添加到资源中:

            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>build-helper-maven-plugin</artifactId>
                <version>3.1.0</version>
                <executions>
                    <execution>
                        <id>add-source</id>
                        <phase>generate-sources</phase>
                        <goals>
                            <goal>add-source</goal>
                        </goals>
                        <configuration>
                            <sources>
                                <source>generator/src/main/java/</source>
                            </sources>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

org.codehaus.mojo
构建助手maven插件
3.1.0
添加源
生成源
添加源
生成器/src/main/java/
  • 将我的子项目添加到maven项目的真正方法是什么?这是gradleinclude命令的确切行为

  • 当前使用帮助器插件的解决方案是否正确?可以接受吗?因为在我的场景中:

  • 我使用的是jooq生成器,它必须从我的子项目中的类中读取生成器策略参数

    如果不是这样,那么最佳实践是什么