java - 插件 1 删除插件 2 类 (Maven)
问题描述
我正在尝试生成 JAVA 类 WSDL 和 XSD,但是当我运行 mvn clean install 时,我看到这些类是从日志中的第一个插件生成的,但我的第二个插件只是删除了它们。我的构建部分是这样写的:
<build>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>jaxws-maven-plugin</artifactId>
<version>2.5</version>
<executions>
<execution>
<id>generate-wsdl-to-java</id>
<phase>generate-sources</phase>
<goals>
<goal>wsimport</goal>
</goals>
<configuration>
.
.
.
.
.
</configuration>
<inherited>true</inherited>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>jaxb2-maven-plugin</artifactId>
<version>2.4</version>
<inherited>true</inherited>
<executions>
<execution>
<id>generate-xsd-to-java</id>
<phase>generate-sources</phase>
<goals>
<goal>xjc</goal>
</goals>
<configuration>
.
.
.
.
</configuration>
<inherited>true</inherited>
</execution>
</executions>
</plugin>
当我反转插件时,类生成良好,没有任何内容被覆盖/删除。如果我想继续前进,我可以保持这种状态,但我想知道在这种情况下我做错了什么。我对 Maven 是半新的,所以仍然了解所有的来龙去脉。我是否必须将它们包裹在“pluginManagement”或类似的东西上?
解决方案
这实际上取决于您如何配置这两个插件的输出文件夹。
默认值是${project.build.directory}/generated-sources/wsimport
,${project.build.directory}/generated-sources/jaxb
所以我不希望它们不会被覆盖。
无论如何:如果两个插件都打算在同一阶段运行,那么它们在 POM 中的顺序定义了它们的执行顺序——甚至pluginManagement
不会改变这一点。所以这没有错
推荐阅读
- python - Discord.py 创建没有字幕的嵌入
- reactjs - ReactJS 功能组件与 AJAX 无需多次渲染
- python - 如何在python中计算双元音?
- video - FFMPEG 从文件目录中对每个视频文件进行 1 秒剪辑,直到达到总播放时间
- swift - 如何关闭已打开以供阅读的 AKAudioFile(或 AVAudioFile)?
- python - 如何将值作为一组来制作字典?
- node.js - 在 node.js 中编译依赖项
- excel - 添加数据时添加边框
- javascript - 在带有 v-for 的模板上使用 :key
- spring - Spring Reactor Retry.retryWhen() 不起作用