024-Spring Boot 应用的打包和部署
一、概述
二、手工打包【不推荐】
打包命令:maven clean package
打包并导出依赖:maven clean package dependency:copy-dependencies
1》然后在target目录下会有dependency文件夹
2》在target文件夹下建立product文件/lib文件夹
3》将target/denpendency下文件全部拷贝至target/product/lib下
4》并且将生产的mall-product-1.0.0.jar同时拷贝至target/product/lib下
接下来运行即可,进入到target/product目录下
java -Djava.ext.dirs=lib com.lhx.mall.product.App
此时网站启动成功,访问即可。。
编写启动脚本
将:java -Djava.ext.dirs=lib com.lhx.mall.product.App 写入 start.cmd文件即可。
三、maven打包插件【推荐】
http://www.mojohaus.org/appassembler/appassembler-maven-plugin/
在pom上增加如下配置
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>appassembler-maven-plugin</artifactId>
<version>1.10</version>
<configuration>
<!-- 生成window Linux 两种平台的执行脚本 -->
<platforms>
<platform>windows</platform>
<platform>unix</platform>
</platforms>
<!-- 根目录 -->
<assembleDirectory>${project.build.directory}/product</assembleDirectory>
<!-- 打包jar,以及maven依赖的jar放到这个目录中 -->
<repositoryName>lib</repositoryName>
<!-- 可执行脚本目录 -->
<binFolder>bin</binFolder>
<!-- 配置文件目录 -->
<configurationDirectory>conf</configurationDirectory>
<!-- 拷贝配置文件到上面的目录中 -->
<copyConfigurationDirectory>true</copyConfigurationDirectory>
<!-- 从哪里拷贝配置文件到上面的目录中(默认src/main/resources) -->
<configurationSourceDirectory>src/main/resources</configurationSourceDirectory>
<!-- lib目录中jar的存放规则,默认是${groupid}/${artifactid}的目录格式,flat表示直接把jar放到lib目录 -->
<repositoryLayout>flat</repositoryLayout>
<encoding>UTF-8</encoding>
<logsDirectory>logs</logsDirectory>
<tempDirectory>tmp</tempDirectory>
<programs>
<program>
<id>product</id>
<!-- 启动类 -->
<mainClass>com.lhx.mall.product.App</mainClass>
<jvmSettings>
<extraArguments>
<extraArgument>-server</extraArgument>
<extraArgument>-Xmx1G</extraArgument>
<extraArgument>-Xms1g</extraArgument>
</extraArguments>
</jvmSettings>
</program>
</programs>
</configuration>
</plugin>
</plugins>
</build>
接下来执行打包命令:maven clean package appassembler:assemble
windows下调试运行bin下命令即可
四、其他
4.1、增加日志配置
4.2、增加监控配置
五、Linux部署
5.1、打成zip包
5.2、上传至Linux,配置数据库等,日志输出目录等
5.3、对bin下增加权限,进入bin下:chmod +x *
5.4、运行命令
./product
024-Spring Boot 应用的打包和部署的更多相关文章
- Spring Boot项目的打包和部署
补充一点:搜索了下别人Spring Boot部署方案,大多都说:①packaging设为war:②要添加Spring Boot的tomcat依赖:③修改output路径,但是使用STS新建Spring ...
- Spring Boot应用的打包和部署
传统的Web应用在发布之前通常会打成WAR包,然后将WAR包部署到Tomcat等容器中使用,而通过前面的学习我们已经知道,Spring Boot应用既能以JAR包的形式部署,又能以WAR包的形式部署. ...
- Spring Boot(十二):spring boot如何测试打包部署
Spring Boot(十二):spring boot如何测试打包部署 一.开发阶段 1,单元测试 在开发阶段的时候最重要的是单元测试了,springboot对单元测试的支持已经很完善了. (1)在p ...
- Spring Boot使用Maven打包替换资源文件占位符
在Spring Boot开发中,通过Maven构建项目依赖是一件比较舒心的事,可以为我们省去处理冲突等大部分问题,将更多的精力用于业务功能上.近期在项目中,由于项目集成了其他外部系统资源文件,需要根据 ...
- 居然仅用浏览器,就完成了Spring Boot应用的开发与部署!
最近有幸试用了一下阿里云的一个新产品:云开发平台,体验一把全新的开发模式!虽然中间也碰到了一些问题,但整体的体验透露着未来感,因为整个过程都不需要使用我们最常用的IDEA,仅依靠浏览器就把一个Spri ...
- spring boot项目Intellij 打包
spring boot项目Intellij 打包 学习了:http://blog.csdn.net/hzt_fighting_up/article/details/78174291 在edit con ...
- Spring boot(4)-应用打包部署
1.Spring Boot内置web spring Boot 其默认是集成web容器的,启动方式由像普通Java程序一样,main函数入口启动.其内置Tomcat容器或Jetty容器,具体由配置来决定 ...
- (转)Spring Boot(十二):Spring Boot 如何测试打包部署
http://www.ityouknow.com/springboot/2017/05/09/spring-boot-deploy.html 有很多网友会时不时的问我, Spring Boot 项目如 ...
- spring boot(十二)打包部署
有很多网友会时不时的问我,spring boot项目如何测试,如何部署,在生产中有什么好的部署方案吗?这篇文章就来介绍一下spring boot 如何开发.调试.打包到最后的投产上线. 开发阶段 单元 ...
- Spring Boot(十二):Spring Boot 如何测试打包部署
有很多网友会时不时的问我, Spring Boot 项目如何测试,如何部署,在生产中有什么好的部署方案吗?这篇文章就来介绍一下 Spring Boot 如何开发.调试.打包到最后的投产上线. 开发阶段 ...
随机推荐
- 硬件(MAC)地址的概念及作用
概念:MAC地址就是在媒体接入层上使用的地址,也叫物理地址.硬件地址或链路地址,其被固化在适配器的ROM中. 可见MAC地址实际上就是适配器地址或适配器标识符.当某台计算机使用某块适配器后,适配器上的 ...
- xcode7和ios9适配之路
从xcode6.x升级xcode7.2之后,发现要做一堆事情来做适配,不然之前的项目没法好好执行. 一.换库 dylib后缀的库都要换成tbd后缀的.例如以下所看到的 换库前: 换库后: 二.http ...
- Android API Guides---OpenGL ES
OpenGL ES Android包含高性能2D和3D图形开放图形库(OpenGL®的).详细而言,OpenGL ES的API支持. OpenGL是一个跨平台的图形API.用于指定的3D图形处理硬件标 ...
- 实时竞价(RTB) 介绍(基础篇)
前言: 说到"实时竞价"大家一定都不陌生,那么为何如今实时竞价发展这么迅猛,当然这个主要得益于总体移动互联网环境的成熟,以及中国本地移动广告市场出现爆发式增长.那么到底什么是实时竞 ...
- OpenAPI初体验
问题的一开始源于客户和服务部门抱怨我的REST API文档写得不好,然后又了解到 django rest framework 利用 coreapi 能自动生成文档,再就是看到 swagger.io 上 ...
- nginx 中location和root,你确定真的明白他们关系?
最近公司开发新项目,web server使用nginx,趁周末小小的研究了一下,一不小心踩了个坑吧,一直404 not found!!!!!当时卡在location和root中,但是网上却比较少聊这方 ...
- stm32开发板无法正常写入的问题或者写入后无法正常运行的问题
在调试stm32的程序的时候遇到这样一个问题. 用Keil往stm32里写入程序时出现无法访问内存的错误.情况如下 然后 J-link没有提示异常.偶尔可以下载成功,但是程序无法正确的执行. 经过一番 ...
- Death to Binary? 分析模拟
/** 题目:Death to Binary? 链接:https://vjudge.net/contest/154246#problem/T 题意:略. 思路: 注意事项: 给的字符串存在前导0: 存 ...
- 深入理解yum工作原理
前言 在前面一篇rpm包制作描述了rpm的打包过程,这篇文章主要讲述yum的工作原理. yum 运行原理 yum的工作需要两部分来合作,一部分是yum服务器,还有就是client的yum工具.下面分别 ...
- 在iframe的父级作用域操作,ifame中的元素。。
frames["iframe的name"].SchDatas SchDatas为方法名js中 frames["iframe的name"].document.ge ...