xsd
和wsdl
类的自动生成,如下所示:,生成的类转到:target/generated/src/main/java
。,问题:运行‘MVN CLEAN PACKET’将始终删除这些类。我怎么才能防止它呢?是否可以让clean
删除target
目录中除generated/
目录之外的全部内容?,可以不使用maven-clean-plugin
删除某些目录,但这绝对不是一个好主意:,这违反了Maven的惯例每次希望生成这些类时,它都会强制您更改POM,您可以使用
excludeDefaultDirectories
和filesets
参数排除maven-clean-plugin
目录:,请注意,我强烈建议您不要使用此解决方案。,您的实际问题不是每次构建时都重新生成类,因为这需要花费很多时间。目标是避免使用自定义配置文件生成:,具有以下插件定义:,似乎cxf-xjc-plugin
没有任何skip
参数,所以当我们想要避免执行时,必须将phase
设置为none
(这是一个未记录的功能,但它是有效的)。,诀窍是定义两个配置文件:一个在默认情况下激活,设置一个属性告诉cxf-xjc-plugin
在generate-soures
阶段执行,而另一个设置一个属性告诉cxf-xjc-plugin
不要执行。,因此,当您想要生成类时,可以使用mvn clean install
调用Maven,而当您不想生成类时,可以使用mvn clean install -PnoGenerate
调用Maven。,这里真正的好处和好处是,您不需要在每次决定是否生成类时都更改POM。,这篇关于如何在Maven中清洁封装时保护自动生成的源码?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,