在Maven中,如何将源目录外的类编译成任意目标目录?



我有一个旧版应用程序,我正在从Ant移植到Maven。 我的 Maven 构建适用于主项目,我已经将其移动到标准的 Maven 目录布局(*.java/src/main/java/中的文件(,它将编译后的类输出到/target/classes/中,尽可能整洁。 它们打包在一个.war文件中。

但是,该项目还有一个在文件夹层次结构之外(实际上是在 Web 应用程序之外(的类,其中包含通过 cron 作业运行的脚本。 假设它是/cronjobs/MyClass.java. 我需要将该类编译并输出到/target/cronjobs/MyClass.class并作为生成的.war文件的一部分压缩到其/cronjobs/文件夹中。

Maven能做到这一点吗? 我知道可以更改默认的"src"目录和"目标"目录,但我不知道是否可以(或如何(只为一个类运行单独的并行编译步骤。

当然,如果与其他类一起编译它然后稍后移动它更容易,我可以移动源文件,但我肯定需要在.war/cronjobs/目录中编译MyClass.class文件。

我将项目分为两部分,webapp 作为战争,cronjobs 作为 jar。Maven 了解多模块格式,这是将 Web 应用程序与非 Web 应用程序代码分离的最佳方式。

相关内容

  • 没有找到相关文章

最新更新