Maven 插件如何知道何时重新运行?
How does a Maven plugin know when to re-run?
当 clean
不是执行的一部分时,Maven 插件如何知道何时重新 运行?
也就是说,当我 mvn install
而不是 mvn clean install
时,它如何知道哪些文件已更改以及哪些插件已更改 should/shouldn 而不是 运行?
我问是因为我似乎有一个麻烦的插件,似乎缺少一些更改,我不想每次都 "recompile the world" 而且我也不想在什么时候积极思考做clean
与否。
经过一些调查,我发现没有通用的方法可以做到这一点。一般的想法是比较源和目标的时间戳,但有些插件 "smart" 不足以知道源是什么。
我 运行 遇到的具体问题是 cxf-codegen-plugin 没有考虑到 .wsdl
文件可能依赖于 .xsd
文件。因此,如果 .xsd
文件被修改,这意味着如果它再次 运行 编译的代码将会改变,但它不会 运行 插件。
当 clean
不是执行的一部分时,Maven 插件如何知道何时重新 运行?
也就是说,当我 mvn install
而不是 mvn clean install
时,它如何知道哪些文件已更改以及哪些插件已更改 should/shouldn 而不是 运行?
我问是因为我似乎有一个麻烦的插件,似乎缺少一些更改,我不想每次都 "recompile the world" 而且我也不想在什么时候积极思考做clean
与否。
经过一些调查,我发现没有通用的方法可以做到这一点。一般的想法是比较源和目标的时间戳,但有些插件 "smart" 不足以知道源是什么。
我 运行 遇到的具体问题是 cxf-codegen-plugin 没有考虑到 .wsdl
文件可能依赖于 .xsd
文件。因此,如果 .xsd
文件被修改,这意味着如果它再次 运行 编译的代码将会改变,但它不会 运行 插件。