我正在编写一个maven插件,它根据输入文本文件和一些其他配置生成java源代码 例如用户创建maven项目并在我的项目的pom.xml中添加我的插件,如下所示 -
<plugin>
<groupId>abc.plugin</groupId>
<artifactId>abc-maven-plugin</artifactId>
<version>1.0.0</version>
<executions>
<execution>
<goals>
<goal>abc</goal>
</goals>
</execution>
</executions>
<configuration>
<schemaPath>${basedir}\input</schemaPath>
<package>com.svc.xyz</package>
<fileNametxt>${basedir}\input.txt</fileNametxt>
</configuration>
</plugin>
作为执行插件目标的一部分,我希望插件删除用户项目中所有预先存在的java源文件/目录,以及重写用户项目的pom.xml。
插件应该重新生成用户project的pom.xml获取现有内容,并保留一些其他现有的用户项目资源,如schema Directory。
此外,我不希望插件的用户在生成源代码后进行任何编辑,并且更喜欢通过插件直接“编译打包”用户项目中生成的源代码。
由于插件将重新生成用户的pom.xml本身,可能需要与生成的源代码一起创建一个新的maven项目,编译,打包并创建jar?