Spring Boot应用 打包与部署指南

小说:淘宝优惠券宣传语作者:成乙更新时间:2019-03-21字数:61169

一架全新的比起寻常高达足足高了六七米的高达屹立在宇宙星空之中,而这一架高达外形有八成接近于战神高达,不过这一架高达身上的武器却几乎是占据星神高达,创世高达和杀神高达的全部。

挂机赚怎么邀请10个人

唐三几乎可以肯定,眼前这株幽香绮罗仙品乃是冰火两仪眼孕育而出,而绝不是被老怪物独孤博移植而来的。幽香绮罗仙品乃是百毒克星,有中和一切毒素的作用。它本身并不能解毒。但却能够克毒。唐三此时所看到的淡粉色光罩,正是它所能克毒地范围。而这层粉红色。在光罩外是无法看到的。
“把你知道的,全都说出来。包括金蛇组织以及武田家族的所有事情。”王小民道。

魔魂大白鲨乃是海中霸主之一,智慧极高,被小白派来的这几个修为都超过了三万年,立刻就领会了唐三的意思,七条魔魂大白鲨同时游动到瀚海护身罩下方,在唐三的控制下,将瀚海护身罩融合在它们的身体上,它们同时加速,顿时朝着海底更深的地方游去。

一、前言 Spring Boot的打包与部署有何特点? Java Web应用在Spring Boot之前,通常是打包成war(Web application ARchive)包,结合Tomcat来完成部署。 对于Spring Boot,Spring官方的建议是将Spring Boot应用打包成一个fat jar(Java ARchive),通过java命令来启动运行。这个fat jar会把Tomcat内置进来,所以部署时也不需要单独配置Tomcat。 Spring官方的打包说明: https://docs.spring.io/spring-boot/docs/1.5.9.RELEASE/reference/htmlsingle/#getting-started-first-application-executable-jar 本篇环境信息 开发环境: 用途 工具&版本 操作系统 Windows 10 开发工具 IntelliJ IDEA 2017 打包工具 Maven 3.X JDK 1.8.x 传输工具 FlashFxp 生产环境: 用途 工具&版本 操作系统 CentOS 7 JDK 1.8.x 传输工具 Vsftp CentOS 7快速上手教程:https://ken.io/serie/centos7-quickstart 二、打包 打包工具的话如前面提到的,我们使用的是Maven 首先需要在pom.xml文件build节点增加如下配置: springboot-courseorg.springframework.bootspring-boot-maven-plugin 另外,需要确认pom.xml文件的package节点配置: jar 本篇ken.io会介绍两种打包方式,一个是Maven命令打包。一个是IDEA+Maven插件打包。 1、 Maven命令打包 准备工作 配置Java、Maven环境变量 参考:http://wiki.jikexueyuan.com/project/maven/environment-setup.html cmd:进入项目目录 本次项目目录是:D:ProjectsGitHubspringboot-coursepackage-maven d: & cd D:ProjectsGitHubspringboot-coursepackage-maven 清理package #清理已存在的编译结果 mvn clean #清理成功后输出信息示例 [INFO] ----------------------------------------------------------- [INFO] BUILD SUCCESS [INFO] ----------------------------------------------------------- 打包 #打包 mvn package #清理成功后输出信息示例 [INFO] ----------------------------------------------------------- [INFO] BUILD SUCCESS [INFO] ----------------------------------------------------------- #清理成功后会在项目根目录生成target文件夹 #查看是否生成target文件夹 ls #查看是否生了jar文件 ls target #根据pom.xml文件的配置,生成的jar文件名是:springboot-course.jar 2、IDEA + Maven插件打包 通过View->Tool Windows->Maven projects 呼出Maven工具栏 或者通过IDEA右侧工具栏呼出Maven工具栏 Maven工具栏 图形化操作就很简单了。两个步骤: clean package 成功之后也会在IDEA 控制台显示以下输出: [INFO] -------------------------------------------------------------------- [INFO] BUILD SUCCESS [INFO] -------------------------------------------------------------------- [INFO] Total time: 7.839 s [INFO] Finished at: 2017-12-09T13:36:40+08:00 [INFO] Final Memory: 21M/218M [INFO] -------------------------------------------------------------------- 生成的jar包路径:项目根目录 argetspringboot-course.jar 3、本地运行测试 通过java命令运行jar包 #进入jar包所在目录 d: & cd D:ProjectsGitHubspringboot-coursepackage-maven arget #执行 java -jar springboot-course.jar #运行成功后会输出如下信息(部分信息略去) [main] o.s.j.e.a.AnnotationMBeanExporter : Registering beans for JMX exposure on startup [main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8080 (http) [main] i.k.springboot.course.CourseApplication : Started CourseApplication in 5.569 seconds (JVM running for 6.363) 通过浏览器访问:localhost:8080,验证是否正常 端口号 在/src/main/resources下新建配置文件application.yml 文件内容: server: port: 8081 配置完成之后,重新打包即可 参考:https://ken.io/note/springboot-course-basic-helloworld 三、部署 1、 准备工作 JDK 1.8部署 https://ken.io/note/centos-java-setup FTP服务端部署 https://ken.io/note/centos-quickstart-ftpserver 通过FTP将jar包上传到CentOS的 /webroot/helloweb 目录 创建日志目录: #创建应用目录&日志目录 sudo mkdir /webroot/helloweb sudo mkdir /webroot/helloweb/logs #修改文件夹权限 sudo chmod 777 /webroot/helloweb sudo chmod 777 /webroot/helloweb/logs 开放端口 #添加可访问端口 sudo firewall-cmd --add-port=8081/tcp --permanent #重新加载防火墙策略 sudo firewall-cmd --reload 2、启动&停止脚本 创建启动脚本 #创建启动脚本start.sh sudo vi /webroot/helloweb/start.sh 脚本内容: #!/bin/sh #指定JDK目录&AppName export JAVA_HOME=/usr/java/jdk1.8.0_151 APP_NAME=springboot-course.jar echo $JAVA_HOME echo $APP_NAME #nohup命令后台启动jar包并写入日志 nohup java -jar $APP_NAME >>logs/start.log 2>>logs/startError.log & #sleep等待15秒后,判断包含AppName的线程是否存在 sleep 15 if test $(pgrep -f $APP_NAME|wc -l) -eq 0 then echo "Start Failed" else echo "Start Successed" fi 创建停止脚本 #创建停止脚本文件 sudo vi /webroot/helloweb/stop.sh 脚本内容: #!/bin/sh #指定AppName APP_NAME=springboot-course.jar #找到包含AppName的进程 PROCESS=`ps -ef|grep $APP_NAME|grep -v grep |awk "{ print $2}"` #循环停用进程直到成功 while : do kill -9 $PROCESS > /dev/null 2>&1 if [ $? -ne 0 ];then break else continue fi done echo "Stop Successed" 启动/停止站点 #启动 sh /webroot/helloweb/start.sh #停止 sh /webroot/helloweb/stop.sh 3、CentOS 7 开机自动Spring Boot应用 将站点启动脚本标记为可执行文件 chmod +x /webroot/helloweb/start.sh 将/etc/rc.d/rc.local标记为可执行文件 CentOS 7中,默认/etc/rc.d/rc.local文件加载时不能执行可执行文件 chmod +x /etc/rc.d/rc.local 将启动文件添加到/etc/rc.d/rc.local文件中 #修改文件 vi /etc/rc.d/rc.local #增加以下内容 /webroot/helloweb/start.sh 本篇文章所用到的源代码:https://github.com/ken-io/springboot-course/tree/master/package-maven

编辑:扁辛建王

发布:2019-03-21 00:38:41

当前文章:http://ayzwzx.cn/play/gxofpge0se.html

wwww.9630com 成都外围v讯 签到赚钱提现 最新网赚发布 微信怎么赚钱快 网络棋牌游戏平台代理 costa兼职时薪 宁波跑滴滴怎样

27935 21232 82109 40568 59025 8783684095 68678 77219

我要说两句: (0人参与)

发布