修复:这是maven-compiler-plugin 3.1中的已知错误
我正在将一个基于ant的1000多个java源项目的构建转换为maven.到目前为止mvn compile一切都很好,但每次启动它都会重新编译所有内容(而不是重用旧类)
使用mvn -X compile报告
[DEBUG] Stale source detected: /project_path/src/main/java/package_path/AFile1.java
[DEBUG] Stale source detected: /project_path/src/main/java/package_path/AFile2.java
...
Run Code Online (Sandbox Code Playgroud)
(仅适用于某个包中的文件,可能与其余代码未引用;不是我的来源,我只是试图对构建进行编组)
编译不会失败,并且正在生成具有更新时间戳的类
/project_path/target/classes/package_path/AFile1.class
/project_path/target/classes/package_path/AFile2.class
...
Run Code Online (Sandbox Code Playgroud)
但是,在查看时间戳时,自昨天以来,java文件没有更改,并且类文件是最新的.为什么这些来源被确定为陈旧?我该如何调试此问题?
即使没有发生任何变化,也必须重新编译1k +文件...
样本输出:
$ mvn clean compile
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building MyProject 1.9.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[WARNING] The POM for net.sourceforge:jffmpeg:jar:1.1.0 is missing, no dependency information available
[INFO]
[INFO] --- maven-clean-plugin:2.4.1:clean (default-clean) @ my-project ---
[INFO] Deleting /project_path/target
[INFO]
[INFO] --- maven-resources-plugin:2.5:resources (default-resources) @ my-project …Run Code Online (Sandbox Code Playgroud)