一.springboot 打包成jar

1.pom.xml

  1. <build>
  2. <!-- jar的名称-->
  3.      <finalName>shiro</finalName>
  4. <plugins>
  5. <plugin>
  6. <groupId>org.springframework.boot</groupId>
  7. <artifactId>spring-boot-maven-plugin</artifactId>
  8. </plugin>
  9.  
  10. <!-- 1、设置jar的入口类 -->
  11. <plugin>
  12. <groupId>org.apache.maven.plugins</groupId>
  13. <artifactId>maven-jar-plugin</artifactId>
  14. <version>2.6</version>
  15. <configuration>
  16. <archive>
  17. <manifest>
  18. <addClasspath>true</addClasspath>
  19. <classpathPrefix>lib/</classpathPrefix>
  20. <mainClass>com.cd.shiro.Application</mainClass>
  21. </manifest>
  22. </archive>
  23. </configuration>
  24. </plugin>
  25.  
  26. <!--2、把附属的jar打到jar内部的lib目录中 -->
  27. <plugin>
  28. <groupId>org.apache.maven.plugins</groupId>
  29. <artifactId>maven-dependency-plugin</artifactId>
  30. <version>2.10</version>
  31. <executions>
  32. <execution>
  33. <id>copy-dependencies</id>
  34. <phase>package</phase>
  35. <goals>
  36. <goal>copy-dependencies</goal>
  37. </goals>
  38. <configuration>
  39. <outputDirectory>${project.build.directory}/lib</outputDirectory>
  40. </configuration>
  41. </execution>
  42. </executions>
  43. </plugin>
  44.  
  45. <!-- 3、打包过程忽略Junit测试 -->
  46. <plugin>
  47. <groupId>org.apache.maven.plugins</groupId>
  48. <artifactId>maven-surefire-plugin</artifactId>
  49. <version>2.17</version>
  50. <configuration>
  51. <skip>true</skip>
  52. </configuration>
  53. </plugin>
  54.  
  55. </plugins>
  56. <!-- 过滤resources 下的html-->
  57. <resources>
  58. <resource>
  59. <filtering>true</filtering>
  60. <directory>src/main/resources</directory>
  61. <excludes>
  62. <exclude>html/**</exclude>
  63. </excludes>
  64. </resource>
  65. </resources>
  66. </build>

2、maven打包:mvn clean package

生成的jar包会在项目的target目录下

3、运行jar包,命令行下:

java -jar xxxx.jar

4、父子工程项目,可在父工程pom.xml中指定打包到统一目录中,上面步骤二将附属jar打包到lib  ${project.build.directory} 就是路径

注意:如果此方式出现打包后的数据混乱请使用方法5.

  1. <build>
  2. <!--项目打包路径 比如源代码在 f:/project 会打包生成在f:/target下面.
  3. 如何部署?
  4. 两种方式:
  5. 一:只上传合并后的jar
  6. .将f:/target下面的 *.jar(M为单位) 上传到服务器 执行 java -jar *.jar执行
  7. 二:源代码和maven引入的包分离
  8. .第一次部署需要把lib整个文件夹,和*.original上传,去掉original后缀 rename .original '' * 执行java -jar *.jar
  9. .后面每次修改了那个源代码就只替换就行,新增了引入的jar也只需要上传新增的jar到lib目录中。
  10. -->
  11. <directory>/target</directory> <!--此处有坑-->
  12. </build>

5、父子工程项目打包,父工程指定到统一目录中。

  1. <!-- 将子项目打包的copy到指定目录-->
  2. <build>
  3. <plugins>
  4. <plugin>
  5. <groupId>org.apache.maven.plugins</groupId>
  6. <artifactId>maven-dependency-plugin</artifactId>
  7. <version>2.10</version>
  8. <executions>
  9. <execution>
  10. <id>copy</id>
  11. <phase>package</phase>
  12. <goals>
  13. <goal>copy</goal>
  14. </goals>
  15. <configuration>
  16. <artifactItems>
  17. <!--把子项目target目录下的jar拷贝到/target下-->
  18. <artifactItem>
  19. <groupId>${project.groupId}</groupId>
  20. <artifactId>${project.artifactId}</artifactId>
  21. <version>${project.version}</version>
  22. <type>${project.packaging}</type>
  23. <overWrite>true</overWrite>
  24. <!--copyTo的目录-->
  25. <outputDirectory>/target</outputDirectory>
  26. </artifactItem>
  27. </artifactItems>
  28. </configuration>
  29. </execution>
  30. <!-- copy lib copy-dependencies copy依赖包-->
  31. <execution>
  32. <phase>package</phase>
  33. <goals>
  34. <goal>copy-dependencies</goal>
  35. </goals>
  36. <configuration>
  37. <outputDirectory>/target/lib</outputDirectory>
  38. </configuration>
  39. </execution>
  40.  
  41. </executions>
  42.  
  43. </plugin>
  44. </plugins>
  45.  
  46. </build>

maven 打包jar && lib的更多相关文章

  1. Maven打包Jar

    现状 该项目使用了Maven,并且引入了Spring,包含代码.配置文件.Jar包,使用的是IDEA来作为开发工具,项目的产出物是要打包成一个可运行的Jar包.通过IDEA的打包工具也可以打包成功,只 ...

  2. MAVEN 打包JAR

    <build> <finalName>edu-service-user</finalName> <resources> <resource> ...

  3. Maven打包jar项目

    默认情况下,使用maven打包的jar项目(执行maven install)不会包含其他包引用,要想打包为带其他项目引用的jar,需要加入插件 要得到一个可以直接在命令行通过java命令运行的JAR文 ...

  4. 部署项目问题(maven打包jar不对应,导致启动时一直找不到某个类)

    项目是springboot+maven  打包用maven的插件package 下面是打包后的目录结构  project-1.0 和project-1.0.tar.gz是一样的  区别就是一个是压缩包 ...

  5. 在Eclipse中用Maven打包jar包--完整版

    将本地的jar导入到maven本地库中 <!--手动加入库中 --><!-- mvn install:install-file -DgroupId=org.apache.Hadoop ...

  6. idea使用maven打包jar包

    1.在pom.xml中加入以下内容: <?xml version="1.0" encoding="UTF-8"?> <project xmln ...

  7. maven打包 jar

    最后更新时间: 2014年11月23日 1. maven-shade-plugin 2. maven-assembly-plugin 3. maven-onejar-plugin maven-shad ...

  8. maven打包jar源码至私服

    1. setting文件 配置私服中设置的用户和密码 <servers> <server> <id>releases</id> <username ...

  9. maven打包jar包

    参考http://www.cnblogs.com/justinzhang/p/4983633.html 新建jar类型的maven project (选择simple project ) 配置 < ...

随机推荐

  1. POJ 1000

    #include <iostream> int main() { using std::cin; using std::cout; using std::endl; int a,b; ci ...

  2. SLAM: 图像角点检测的Fast算法(时间阈值实验)

    作为角点检测的一种快速方法,FastCornerDetect算法比Harris方法.SIft方法都要快一些,应用于实时性要求较高的场合,可以直接应用于SLAM的随机匹配过程.算法来源于2006年的Ed ...

  3. Java Web_过滤器

    过滤器分类: Servlet2.5: request:用户直接访问页面时,Web容器将会调用过滤器. forward:目标资源是通过RequestDispatcher的forward访问时,该过滤器将 ...

  4. uni-app的专属强大自适应单位upx,但是这个这是一个大坑,不能动态赋值解决办法

    uni-app 使用 upx 作为默认尺寸单位, upx 是相对于基准宽度的单位,可以根据屏幕宽度进行自适应.uni-app 规定屏幕基准宽度750upx. 开发者可以通过设计稿基准宽度计算页面元素 ...

  5. jmeter的性能监控框架搭建记录(Influxdb+Grafana+Jmeter)

    查看笔记 http://note.youdao.com/noteshare?id=c700365713abb98bd3d10e6f45393af9&sub=6F4E14FF3F9D4167AE ...

  6. 洛谷P1002 过河卒【dp】

    棋盘上AA点有一个过河卒,需要走到目标BB点.卒行走的规则:可以向下.或者向右.同时在棋盘上CC点有一个对方的马,该马所在的点和所有跳跃一步可达的点称为对方马的控制点.因此称之为"马拦过河卒 ...

  7. C# 实现串口发送数据(不用串口控件版)

    参考:https://blog.csdn.net/mannix_lei/article/details/79979432 https://www.cnblogs.com/ElijahZeng/p/76 ...

  8. Spring Cloud 各个组件介绍

    从上图可以看出 Spring Cloud 各个组件相互配合,合作支持了一套完整的微服务架构: Eureka 负责服务的注册与发现,很好地将各服务连接起来. Hystrix 负责监控服务之间的调用情况, ...

  9. Linux 常用密令总结 ------随用随记吧

    ubuntu or uqilin 目录文件类ls 查看目录cd 转到目录ps -aux查看所有进程grep 查找| 管道符 用户账户类 su 切换用户sudo 以管理员权限运行命令重启机器 reboo ...

  10. asp.net--Area功能

    大型项目必用,这个必须要会,相当于一个MVC的子程序,方便管理,可以理解为一个独立的小MVC程序了 隔离代码.避免冲突 区域是独立的MVC小程序