Java maven编译器插件3.0未编译maven下的资源文件夹
我正在将一个项目从Maven 2移植到Maven 3。我还借此机会更新了一些插件的版本,即maven编译器插件,从2.1升级到3.0,maven资源插件升级到2.6 我在资源下有一个接口,例如:Java maven编译器插件3.0未编译maven下的资源文件夹,java,maven,maven-3,maven-resources-plugin,maven-compiler-plugin,Java,Maven,Maven 3,Maven Resources Plugin,Maven Compiler Plugin,我正在将一个项目从Maven 2移植到Maven 3。我还借此机会更新了一些插件的版本,即maven编译器插件,从2.1升级到3.0,maven资源插件升级到2.6 我在资源下有一个接口,例如: public interface Version { public static final String VERSION = "${project.version}"; } 在我的pom.xml中,在构建中,我有: <resources> <resource>
public interface Version {
public static final String VERSION = "${project.version}";
}
在我的pom.xml中,在构建中,我有:
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
src/main/resources
真的
这是以前的工作。但由于升级到Maven 3,编译失败,无法找到版本
很明显,它没有编译版本或者没有将其包含在类路径中
Maven 3或最新版本的Maven编译器插件是否有可能影响这一点?从阅读文档开始,没有任何更改…您必须将目标文件夹指定为如下所示。目前,如果您在目标文件夹中查找,您可能有一个Version.java文件。通过添加targetPath,它会将过滤后的.java文件放入您的src/java文件夹,并将其编译到您的目标文件夹中
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
<includes>
<include>**/*.java</include>
</includes>
<targetPath>${basedir}/src/main/java/</targetPath>
</resource>
src/main/resources
真的
**/*.爪哇
${basedir}/src/main/java/
这在Maven 2中是如何工作的?你看起来怎么样?原因通常不会编译src/main/resources中的java文件。问题是你为什么需要这些东西?您有一个verison,它是工件坐标的一部分?如发布的,您没有提供足够的信息。您正在进行某种形式的代码生成,但不清楚您是如何进行的(因为简单地使用transform复制资源是不行的)。我建议使用-X
运行新旧版本,看看它们的不同之处。实际上,这里的问题是maven编译器插件3.0。2.1的效果很好。是的,就是这样。我错过了目标路径。谢谢@换句话说,它不是maven编译器插件。