在 Maven 模块中提供资源文件
Providing resources files in Maven module
我正在开发一个新的 Maven 模块,但在解决依赖关系方面遇到了一些问题。目标是创建一个提供我的 jar 存档和一堆其他资源的 Maven 对象。我创建了 pom.xml 并将带有 install:install 文件的 jar 存档安装到存储库中。这很好用。但是现在我正在为资源而苦苦挣扎。这是一个例子:
- pom.xml
- myJar.jar
- resources/resourceA
- resources/resourceB
- 资源/...
如果没有资源,myJar 存档就毫无用处,因为它们需要部署在一个包中。你能给我一个例子或提示我应该使用哪个插件吗?
使用maven 程序集插件。我们可以做到以下几点:
<project>
[...]
<build>
[...]
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.5.3</version>
<configuration>
<descriptors>
<descriptor>src/assembly/jar_with_resources.xml</descriptor>
</descriptors>
</configuration>
<executions>
<execution>
<id>make-assembly</id> <!-- this is used for inheritance merges -->
<phase>package</phase> <!-- bind to the packaging phase -->
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
[...]
</project>
您需要定义 jar_with_resources.xml 描述符,在其中准确说明程序集中包含什么,不包含什么。
我正在开发一个新的 Maven 模块,但在解决依赖关系方面遇到了一些问题。目标是创建一个提供我的 jar 存档和一堆其他资源的 Maven 对象。我创建了 pom.xml 并将带有 install:install 文件的 jar 存档安装到存储库中。这很好用。但是现在我正在为资源而苦苦挣扎。这是一个例子:
- pom.xml
- myJar.jar
- resources/resourceA
- resources/resourceB
- 资源/...
如果没有资源,myJar 存档就毫无用处,因为它们需要部署在一个包中。你能给我一个例子或提示我应该使用哪个插件吗?
使用maven 程序集插件。我们可以做到以下几点:
<project>
[...]
<build>
[...]
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.5.3</version>
<configuration>
<descriptors>
<descriptor>src/assembly/jar_with_resources.xml</descriptor>
</descriptors>
</configuration>
<executions>
<execution>
<id>make-assembly</id> <!-- this is used for inheritance merges -->
<phase>package</phase> <!-- bind to the packaging phase -->
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
[...]
</project>
您需要定义 jar_with_resources.xml 描述符,在其中准确说明程序集中包含什么,不包含什么。