下面讲讲如何打包SSM和springboot项目,并部署到云服务器上。

由于使用的IDE不同,有的使用eclipse,有的使用idea,所以如果在IDE中按照 maven clean 再 maven install的方式打包会稍有不同,下面介绍一种通用的方式,不论SSM项目还是springboot项目,不论使用的是eclipse还是idea,我们直接在dos界面,使用命令进行打包。

以一个例子进行演示:

首先需要在pom.xml中定义打包的类型

然后在dos界面,进入该项目下,运行下面的命令进行打包。

mvn clean package -D maven.test.skip=true

这样就会在我们自己设置的output目录下(一般为target目录)生成该项目的war包

这样,我们就得到了该项目的war包,然后我们可以把springboot和SSM的war包放到tomcat的webapp目录下就可以了。

~~~~~~~~~~~~~~~~~~~~~~~~~

将springboot项目当为普通的web项目 部署在tomcat的webapp下时,需要加上下面这个类,并让它被扫描到。

import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer; /**
* 继承SpringBootServletInitializer,相当于以web.xml的方式去启动部署
* @author Administrator
*
*/
public class WarStartApplication extends SpringBootServletInitializer{ /*重写该方法
*/
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
//使用web.xml运行应用程序,指向springboot,最后启动springboot
return builder.sources(ProfileApplication.class);
} }

~~~~~~~~~~~~~~~~~~~~~~~~~~

如果我们打包的是springboot项目,还有第二种方式,我们还可以使用springboot自带的tomcat,可以使用jar -jar 的命令 启动该项目,也是可以的。

java -jar /developer/collegeo2o-0.0.1-SNAPSHOT.war

不过使用java -jar 启动该springboot项目时,如果我们关闭了SSH的连接终端,或者退出该运行模式时,那么该springboot内置的tomcat就相当于被关闭了,这样我们就无法访问到项目,所以我们可以使用一点点linux的知识,编写脚本,在后台运行该war。

nohup java -jar /developer/collegeo2o-0.0.1-SNAPSHOT.war &

然后我们执行该脚本就相当于启动了该项目,只有在我们重启服务器或者强行关闭该进程的时候该项目才会停止。

=========================================================================

以上就是在使用maven构建项目的时候,打包并部署SSM和springboot项目。两者都是相似的,都可以部署到我们自己的tomcat服务器中,特殊的是,springboot项目可以独立运行(内置tomcat); 另外如果部署springboot时使用了我们自己的tomcat,那么需要在server.xml中配置docBase  资源才能正常访问到,而使用内置tomcat时,我们已经在WebMvcConfig类中配置了资源的映射,所以不需要在加docBase.

使用maven构建项目时,SSM和springboot项目的打包与云服务器部署的更多相关文章

  1. 后端分页神器,mybatis pagehelper 在SSM与springboot项目中的使用

    mybatis pagehelper想必大家都耳熟能详了,是java后端用于做分页查询时一款非常好用的分页插件,同时也被人们称为mybatis三剑客之一,下面 就给大家讲讲如何在SSM项目和sprin ...

  2. springboot项目中引用其他springboot项目jar

    1. 剔除要引入的springboot项目中不需要的文件:如Application和ApplicationTests等 2.打包 不能使用springboot项目自带的打包插件进行打包: 3.打包 4 ...

  3. django 本地项目部署uwsgi 以及云服务器部署 uwsgi+Nginx+Docker+MySQL主从

    一 .django 本地项目部署uwsgi 1 本地部署项目 uwsgi安装测试 通过uwsgi 进行简单部署 安装uwsgi命令:pip install uwsgi -i http://pypi.d ...

  4. Eclipse 中构建 Maven 项目的完整过程 - SpringBoot 项目

    进行以下步骤的前提是你已经安装好本地maven库和eclipse中的maven插件了(有的eclipse中已经集成了maven插件) 一.Maven项目的新建 1.鼠标右键---->New--- ...

  5. 用myeclipse 创建maven项目时,生成的项目名中总是包含Maven Webapp

    解决办法:新建Maven项目时,展开Advanced-Name template中选择[artifactId]即可

  6. Eclipse+maven 构建第一个简单的springmvc项目

    先给出项目的目录: 在eclipse下使用maven构建第一个springmvc项目步骤如下: 1.创建maven project(此处默认你已了解maven),此处需要注意以下两点 2.创建完毕后会 ...

  7. idea:spring initializr无web勾选,maven方式搭建springboot项目。jdk7创建springboot项目的版本不兼容问题。

    一.idea 使用spring initializr不选择web搭建springboot项目 1.file => new => project 2.直接next到finish结束. 3.完 ...

  8. (转)淘淘商城系列——使用maven构建工程时出现的错误

    http://blog.csdn.net/yerenyuan_pku/article/details/72690846 我觉得maven就他妈是一个傻逼,反正我是对它无语了.昨天刚刚使用maven构建 ...

  9. SpringBoot项目的云服务器部署

    1.场景还原 springboot配置相当简单,人人皆知.怎么把springboot工程部署到云服务器上呢?可能有人会说,博主你前篇不是讲了java工程的云部署把:但是我想澄清一点的是,我前篇的工程都 ...

随机推荐

  1. 138.更改session的存储机制

    修改session的存储机制: 默认情况下,session数据时存储到数据库中,当然也可以将session数据存储到其他地方.可以通过设置SESSION_ENGINE来更改session的存储位置,这 ...

  2. mysql权限过滤

    1.用like做权限过滤 上级部门可以看到下级部门发布的正式文件,下级部门不能看到上级部门发布的正式文件 SELECT*FROM cms_nrgl_st a, mz_xzjg bWHERE a.sys ...

  3. 【E20200105-1】Centos 7.x 下vsftpd配置文件常用配置详解

    centos 7 下vsftp的安装和配置可以参见<[E20200102-1]centos 7 下vsftp的安装和配置> ########匿名用户(anonymous)设置####### ...

  4. SendMessage模拟按键所需的虚拟键码

    Virtual-Key Codes The following table shows the symbolic constant names, hexadecimal values, and mou ...

  5. 《NVM-Express-1_4-2019.06.10-Ratified》学习笔记(4.12-加-6.2-加-7.2.5.2)Fused_Operations

    4.12 Fused Operations 融合操作 融合操作通过“fusing”把两个简单的命令融合一起来支持一个更复杂的命令.协议规定这个特性是可选的:如果支持此特性,需要在Figure 247 ...

  6. 阿里云部署JeecgBoot

    阿里云部署JeecgBoot 首先贴出官网教程:http://jeecg-boot.mydoc.io/?t=345682 自己在部署的时候遇到了各种各样的问题,其实一步一步的按照官网给出的步骤来是没问 ...

  7. [P1361] 小M的作物 - 最小割

    没想到今天早上的第一题网络流就血了这么多发 从经典的二选一问题上魔改 仍然考虑最小割 #include <bits/stdc++.h> using namespace std; #defi ...

  8. redis 列表类型list

    列表类型(list)1.插入 左侧插入 :lpush key value1 value2 value3... 右侧插入: lpush key value1 value2 value3... 在指定元素 ...

  9. python3练习100题——030

    这周开始,要重新振作一点吧! 如果每天都想着消费升级,而不是想着如何投入时间精力让自己进步,未来根本就看不到希望. 我想要更认真的活着 live wild 原题链接:http://www.runoob ...

  10. webpack 之搭建本地服务器

    搭建本地服务器 webpack提供了一个可选的本地开发服务器,这个本地服务器基于node.js搭建,内部使用express框架,可以实现 我们想要的让浏览器自动刷新显示我们修改后的结果 不过它是一个单 ...