8

我很抱歉这肯定是基本的 maven/war 插件,但我完全不是 maven 用户。我只需要将这件事破解到一个基于 maven 的项目中。

我需要做的是将一个(基本上是任意的)目录和文件复制到我的战争的根目录中。我需要它们在战争部署时显示为可通过 HTTP 获得的资源。

我不能简单地将它们放在源代码树中的“正确位置”。这是因为有问题的文件实际上是我项目的源文件。我意识到这有点奇怪,但这是一个文档项目,我需要在同一场战争中展示源代码和效果。

那么,在一般情况下,我将如何配置 Maven 战争插件以将给定目录及其内容复制到我的战争的根目录?(顺便说一句,我试图理解这个工具的文档,但它似乎是基于对 maven 的如此多的理解,感觉如果不先学习 maven 就永远不会理解它,而且我有点太刚才时间紧迫!)

许多TIA托比。

4

2 回答 2

10

你可以试试:

  1. 使用复制资源插件。target在打包战争之前使用插件复制您的源文件。

  2. 或者,配置maven-war-plugin以包含其他资源。

于 2013-11-15T00:52:07.317 回答
1

谢谢德鲁,这让我到达了我需要去的地方。最重要的是,我将您为复制资源提供的链接中的示例 pom 片段添加到我的 pom.xml 中,并进行了以下更改:

<outputDirectory>target/${project.name}-${project.version}/sources ...

<目录>src/main/java ...

我从您提供的链接中复制了这个,然后将元素编辑为指向 src/main/java,它拾取了我的文件,并将 outputDirectory 指向聚合目标/${project.name}-${project.version}/来源。我发现 ${project.name} 映射到项目,并且版本来自 ${project.version},这似乎解决了最后一点问题。

再次感谢。托比

于 2013-11-15T03:06:50.030 回答