我有一个名为extra-jars的文件夹在src/main/rescource中,但是我该如何将它们包含在构建中呢?我希望它们与其他jar一起放在lib文件夹中。我尝试通过<build>标签来包含它们,但是没有成功。
我有一个名为extra-jars的文件夹在src/main/rescource中,但是我该如何将它们包含在构建中呢?我希望它们与其他jar一起放在lib文件夹中。我尝试通过<build>标签来包含它们,但是没有成功。
对于没有通过Maven仓库分发的jar包,最简单的方法是将这些额外的jar包放在项目的src/main/webapp/WEB-INF/lib
目录下。按照惯例,Maven会在最终的war构建过程中自动包含src/main/webapp
目录下的所有内容。
另一种方法是使用Maven War插件。该插件允许通过配置向最终的war构建过程中添加额外的文件。这里有一个示例。
在POM的构建部分中,添加以下类似代码:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.4</version>
<configuration>
<webResources>
<resource>
<directory>src/main/resource/extra-jars</directory>
<includes>
<include>*.jar</include>
</includes>
<targetPath>WEB-INF/lib</targetPath>
</resource>
</webResources>
</configuration>
</plugin>
</plugins>
</build>
<configuration>
部分是添加附加文件的关键。
<directory>
元素定义资源的源位置。路径相对于pom.xml
。<includes>
元素定义上述目录中包含哪些文件。<targetPath>
元素定义将文件复制到WAR中的目标目录。