maven build jar包的时候,在当前的lib目录自动引入依赖包

﹏ヽ暗。殇╰゛Y 2022-06-10 05:17 306阅读 0赞

在Pom里针对build增加如下的插件配置。

  1. <build>
  2. <finalName>your-project-name</finalName>
  3. <resources>
  4. <resource>
  5. <targetPath>${project.build.directory}/classes</targetPath>
  6. <directory>src/main/resources</directory>
  7. <filtering>true</filtering>
  8. <includes>
  9. <include>**/*.xml</include>
  10. <include>**/*.properties</include>
  11. </includes>
  12. </resource>
  13. </resources>
  14. <plugins>
  15. <plugin>
  16. <groupId>org.apache.maven.plugins</groupId>
  17. <artifactId>maven-jar-plugin</artifactId>
  18. <configuration>
  19. <archive>
  20. <manifest>
  21. <mainClass>com.alibaba.dubbo.container.Main</mainClass>
  22. <addClasspath>true</addClasspath>
  23. <classpathPrefix>lib/</classpathPrefix>
  24. </manifest>
  25. </archive>
  26. <classesDirectory>
  27. </classesDirectory>
  28. </configuration>
  29. </plugin>
  30. <plugin>
  31. <artifactId>maven-dependency-plugin</artifactId>
  32. <executions>
  33. <execution>
  34. <id>copy-dependencies</id>
  35. <phase>prepare-package</phase>
  36. <goals>
  37. <goal>copy-dependencies</goal>
  38. </goals>
  39. </execution>
  40. </executions>
  41. <configuration>
  42. <includeTypes>jar</includeTypes>
  43. <overWriteSnapshots>true</overWriteSnapshots>
  44. <type>jar</type>
  45. <outputDirectory>${project.build.directory}/lib</outputDirectory>
  46. </configuration>
  47. </plugin>
  48. </plugins>
  49. </build>

第一个插件maven-jar-plugin负责生成指定入口的可执行JAR文件。同时在manifest.mf文件里写入入口函数信息和classpath。本例中是吧classpath设置为lib目录。

第二个插件maven-dependency-plugin负责创建lb目录,同时把需要依赖的jar包全部复制进去。

发表评论

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

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

相关阅读

    相关 Maven Jar依赖

    一、Jar 包的依赖范围 Maven 的 pom.xml 配置文件中 Jar 包的依赖范围: 依赖的范围有几个可选值, compile、test、provided、 r