当前位置:   article > 正文

MAVEN 打 JAR包 注意地方(怎么把依赖打到Jar)_maven3.1.0 把依赖的jar打入

maven3.1.0 把依赖的jar打入

jar包:通常是开发时要引用通用类,打成包便于存放管理。
直接执行jar的方法:
1.当有Main-Class (/META-INF/MANIFEST.MF)
java -jar name.jar

2.没有Main-Class
java -cp name.jar package.ClassName

 

一、怎么通过MAVEN设置jar的主程序入口?

  1. <plugin>
  2. <!-- JAR Maven 管理-->
  3. <groupId>org.apache.maven.plugins</groupId>
  4. <artifactId>maven-jar-plugin</artifactId>
  5. <version>3.1.0</version>
  6. <configuration>
  7. <archive>
  8. <manifest>
  9. <!-- 配置主程序 java -jar 默认Class -->
  10. <addClasspath>true</addClasspath>
  11. <classpathPrefix>lib/</classpathPrefix>
  12. <mainClass>javacore.Test</mainClass>
  13. </manifest>
  14. </archive>
  15. </configuration>
  16. </plugin>

二、怎么把pom.xml的依赖打进jar包?

  1. <!-- maven 打包集成插件 -->
  2. <plugin>
  3. <artifactId>maven-assembly-plugin</artifactId>
  4. <executions>
  5. <execution>
  6. <phase>package</phase>
  7. <goals>
  8. <goal>single</goal>
  9. </goals>
  10. </execution>
  11. </executions>
  12. <configuration>
  13. <descriptorRefs>
  14. <!-- 将依赖一起打包到 JAR -->
  15. <descriptorRef>jar-with-dependencies</descriptorRef>
  16. </descriptorRefs>
  17. </configuration>
  18. </plugin>

完整的pom.xml

  1. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  2. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  3. <modelVersion>4.0.0</modelVersion>
  4. <groupId>www.JavaCoreTest</groupId>
  5. <artifactId>JavaCoreTest-javaTest</artifactId>
  6. <packaging>jar</packaging>
  7. <version>1.0</version>
  8. <name>JavaCoreTest Maven Webapp</name>
  9. <properties>
  10. <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  11. <spring.version>4.1.3.RELEASE</spring.version>
  12. <quartz.version>2.2.1</quartz.version>
  13. <activiti.version>5.16.3</activiti.version>
  14. </properties>
  15. <build>
  16. <plugins>
  17. <plugin>
  18. <groupId>org.apache.maven.plugins</groupId>
  19. <artifactId>maven-compiler-plugin</artifactId>
  20. <configuration>
  21. <source>1.8</source>
  22. <target>1.8</target>
  23. </configuration>
  24. </plugin>
  25. <plugin>
  26. <!-- JAR Maven 管理-->
  27. <groupId>org.apache.maven.plugins</groupId>
  28. <artifactId>maven-jar-plugin</artifactId>
  29. <version>3.1.0</version>
  30. <configuration>
  31. <archive>
  32. <manifest>
  33. <!-- 配置主程序 java -jar 默认Class -->
  34. <addClasspath>true</addClasspath>
  35. <classpathPrefix>lib/</classpathPrefix>
  36. <mainClass>javacore.Test</mainClass>
  37. </manifest>
  38. </archive>
  39. </configuration>
  40. </plugin>
  41. <!-- maven 打包集成插件 -->
  42. <plugin>
  43. <artifactId>maven-assembly-plugin</artifactId>
  44. <executions>
  45. <execution>
  46. <phase>package</phase>
  47. <goals>
  48. <goal>single</goal>
  49. </goals>
  50. </execution>
  51. </executions>
  52. <configuration>
  53. <descriptorRefs>
  54. <!-- 将依赖一起打包到 JAR -->
  55. <descriptorRef>jar-with-dependencies</descriptorRef>
  56. </descriptorRefs>
  57. <archive>
  58. <manifest>
  59. <!-- 配置主程序 java -jar 默认Class -->
  60. <addClasspath>true</addClasspath>
  61. <classpathPrefix>lib/</classpathPrefix>
  62. <mainClass>javacore.Test</mainClass>
  63. </manifest>
  64. </archive>
  65. </configuration>
  66. </plugin>
  67. </plugins>
  68. <finalName>JavaCoreTest</finalName>
  69. </build>
  70. <dependencies>
  71. <dependency>
  72. <groupId>com.alibaba</groupId>
  73. <artifactId>fastjson</artifactId>
  74. <version>1.1.41</version>
  75. </dependency>
  76. <dependency>
  77. <groupId>mysql</groupId>
  78. <artifactId>mysql-connector-java</artifactId>
  79. <version>6.0.6</version>
  80. </dependency>
  81. </dependencies>
  82. </project>

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/197825
推荐阅读
相关标签
  

闽ICP备14008679号