maven 由于从 thrift 自动生成文件而重建模块,有什么方法可以只生成更改的文件?

maven rebuilds modules because of auto-generated files from thrift, any way to only generate changed files?

编辑:跳到正确相关问题的最后一句

我正在使用这个 maven 命令构建一个项目:

-am -DskipTests=true -pl myModule install

项目很大,module有很多依赖,不知道什么原因,虽然没改,但还是被重新编译了, 我收到了很多模块的这条消息:

[INFO] Changes detected - recompiling the module!

这是我的构建标签:

    <build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.6.1</version>
            <configuration>
                <source>1.7</source>
                <target>1.7</target>
                <encoding>UTF-8</encoding>
            </configuration>
        </plugin>
    </plugins>
</build>

我正在使用 maven 3.5.0

为什么依赖模块被识别为已更改?

编辑:使用 michaldo 的建议

我发现了一个依赖模块,很多陈旧源检测到 关于自动生成的 .java 从节俭创建的文件,

现在的问题是:我如何指示 maven/thrift 不为未更改的 thrift 源生成 .java 文件?

michaldo 的评论解决了我的问题, 在解决了 thrift 插件所有不必要的代码生成之后,构建速度快多了

关键位是将 checkStaleness 参数添加到配置中:

            <groupId>org.apache.thrift.tools</groupId>
            <artifactId>maven-thrift-plugin</artifactId>
            <configuration>
                <thriftExecutable>${thrift.exe}</thriftExecutable>
                *<checkStaleness>true</checkStaleness>*
            </configuration>