Maven打包时包含资源文件和源码到jar的方法

Love The Way You Lie 2022-11-29 12:41 209阅读 0赞
  1. 在使用Maven打包时,我们发现最终打包之后jar中只有已经编译完成的代码class,资源文件都没了,如果有资源文件需要打包进jar的话,直接打包jar无法正常工作。

其实,在pom.xml中配置一下节点即可实现把资源打包进来的操作。

中添加以下内容:

  1. <resources>
  2. <resource>
  3. <directory>${basedir}/src/main/resources</directory>
  4. <includes>
  5. <include>**/*.*</include>
  6. </includes>
  7. <filtering>false</filtering>
  8. </resource>
  9. <resource>
  10. <directory>${basedir}/src/main/java</directory>
  11. <includes>
  12. <include>**/*.*</include>
  13. </includes>
  14. <excludes>
  15. <exclude>**/*.java</exclude>
  16. </excludes>
  17. <filtering>false</filtering>
  18. </resource>
  19. </resources>

可以看到,添加的节点中有两个子节点,分别配置了两个不同的地方的内容打包进jar(一般资源文件放在项目resource文件夹和源代码文件夹里面),其中每一个节点中的内容意义如下:

为被打包的资源文件的路径,${basedir}表示这个项目的根目录。

被包含的文件,里面的**/*.*表示包含其中的所有文件和文件夹。

是否过滤资源文件,默认false。

要排除的文件,上面的配置内容中排除了所有的java源代码文件防止把源代码也打包进去了。

如果在别的地方有资源文件,可以自己再添加节点,格式按照这个来。

需要说明的是一些jar外部包因为包含java doc注释,所以也需要将源代码文件包含进去。这样的话也很简单,把上面的第二个节点中的整个节点去掉即可。(即不配置排除java源代码文件)

发表评论

表情:
评论列表 (有 0 条评论,209人围观)

还没有评论,来说两句吧...

相关阅读