如何在maven jar插件中包含外部源文件



我们正在从外部(到项目)类构建一个jar文件。这很好,但我们还没能弄清楚如何还包括外部源文件。我曾尝试过使用"<includes>"标记,但在使用时最终只在最终jar中显示了一个清单文件。我曾考虑过使用maven资源插件,但要么我用错了,要么它在我的情况下不起作用。这是我们的代码副本:

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <version>2.4</version>
            <executions>
                <execution>
                    <!-- <phase>generate-resources</phase> -->
                    <phase>clean</phase>
                    <goals>
                        <goal>jar</goal>
                    </goals>
                    <configuration>
                        <classesDirectory>${itendant.path}/web/rocket/WEB-INF/classes</classesDirectory>
                        <finalName>${itendant.jar.name}</finalName>
                        <outputDirectory>${itendant.jar.path}</outputDirectory>
                    </configuration>
                </execution>
            </executions>
        </plugin>

来源?你是指外部依赖关系吗?这些也应该使用maven进行管理,使用mvn deploy:deploy-file,如中所述http://maven.apache.org/plugins/maven-deploy-plugin/usage.html,并导入到您的pom.xml中。

如果你真的是指外部资源,那么一个合适的资源声明应该是:

<project>
 ...
 <build>
   ...
   <resources>
     <resource>
       <directory> [your folder here] </directory>
     </resource>
   </resources>
   ...
 </build>
 ...
</project>

当然,如果您有多个资源目录,则可以有多个标记。还要注意,在clean期间构建任何内容都是有问题的,因为clean并不是每次构建都运行——package将是一个更好的选择。

最新更新