使用腾讯云部署war包
目录
1、前期准备
项目地址为:Atlantide/毕业设计 - 码云 - 开源中国 (gitee.com)
release分支是用来打包的,pull拉下来可以直接打包。springboot打war包相关pom.xml,启动类配置可参考release分支
master分支是用来本地直接启动的。
购买并配置服务器

我买的服务器是windows 2012R的操作系统。
在服务器上装好相应的环境(jdk,mysql,tomcat) 注意:Tomcat如果是单独启动的话(即不是通过eclipse,Intel idea启动的话,要配置环境变量,不然会出现startup.bat启动闪退)
2、springboot打war包
可参考release分支
启动类新增方法
package com.springboot.erp;
import javafx.application.Application;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.ServletComponentScan;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
@ServletComponentScan  //(打war用)
@SpringBootApplication
public class ErpApplication extends SpringBootServletInitializer {
    public static void main(String[] args) {
        SpringApplication.run(ErpApplication.class, args);
    }
    //(打war用)
    /**
     *新增此方法
     */
   @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        // 注意这里要指向原先用main方法执行的Application启动类
        return builder.sources(ErpApplication .class);
    }
}
pom.xml进行修改
  <!--打成war包-->
    <packaging>war</packaging>
    <properties>
        <java.version>1.8</java.version>
<!--        打war时不打test-->
        <skipTests>true</skipTests>
    </properties>
 <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <!-- 移除嵌入式tomcat插件(打war用) -->
            <exclusions>
                 <exclusion>
                     <groupId>org.springframework.boot</groupId>
                     <artifactId>spring-boot-starter-tomcat</artifactId>
                 </exclusion>
             </exclusions>
        </dependency>
        <!--指定本地tomcat版本(打war用)-->
        <dependency>
         <groupId>org.apache.tomcat</groupId>
         <artifactId>tomcat-servlet-api</artifactId>
         <version>9.0.12</version>
         <scope>provided</scope>
     </dependency>
<build>
        <finalName>erp</finalName>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
先clean后package

打包好的war包是在项目的target目录下


3、部署war包
把war放到服务器上tomcat的webapps目录下,并改名为ROOT

之所以把war包改名为root是为了访问项目时不带项目名。当然也可以在conf / server里面配置:<Context path="" docBase="xxx" reloadable="false" /> 但我试过没有用,只能用替换ROOT文件这种方法了。

遇到类似问题可参考: tomcat配置访问项目时不需要加项目名称_coolcoffee168的博客-CSDN博客_tomcat配置项目名称
4、导入数据库
使用Navicat工具直接执行一遍.sql文件就行了(我的数据库是mysql)
5、修改Tomcat启动端口
Tomcat默认启动端口是8080,可在conf / server里面进行修改,我这里修改为8082

注意:要区分application.yml / application.properties里面配置的server.port和服务器上tomcat的启动端口,一个配置的是springboot框架自带的tomcat的启动端口,只是适用于本地启动的。另一个是服务器启动war包的端口。

6、启动服务器


7、设置腾讯云服务器防火墙规则
因为我在外部要通过8082这个端口去访问服务器上的项目,所以我要把8082这个端口暴露出去


8、从外部访问

演示地址:ERP系统
9、总结
这是我2020年做的毕业设计,当时是部署在阿里云ECS服务器上的,学生服务器99元/一年。因为正巧最近腾讯云服务器做活动打折,所以就买了腾讯云1年 40元的。之前怎么部署阿里云的已经有点忘了,搞了蛮久的,所以想写出来整理一下。碰到了各种问题,比如tomcat启动闪退,Navicat用不了,导入.sql文件报错等等。当然这些只是小问题。最棘手的问题是那个tomcat启动项目是默认带着访问名的,这个我搞了好久,最后不得已把war替换ROOT了。
10、参考资料
Springboot 打包跳过Junit测试_YouluBank的博客-CSDN博客
tomcat配置访问项目时不需要加项目名称_coolcoffee168的博客-CSDN博客_tomcat配置项目名称
使用腾讯云部署war包的更多相关文章
- 如何在阿里云上部署war包到tomcat服务器
		
一. 准备工作:xshell和xftp 首先我们得确保,xshell能够远程连接阿里云ECS,xftp能够保证windows和linux之间的文件传输(当然也可以选择FileZilla,但xftp感觉 ...
 - Hexo 博客 之 腾讯云部署过程
		
写在前面 Hexo 博客搭好了有差不多两周时间了,这期间走了很多弯路,跳了很多坑.一些坑自己 bing 到了答案,找到了解决方法,一些坑则是自己摸索出来的解决方法.现在准备写几篇关于搭建流程.搭建过程 ...
 - docker学习5-docker安装tomcat环境和部署war包
		
前言 tomcat部署web项目非常方便,把war包放到webapps目录就可以了.本篇使用docker快速搭建一个tomcat环境 下载tomcat镜像 拉取官方最新版tomcat镜像 [root@ ...
 - 记录centos7下tomcat部署war包过程
		
记录centos7下tomcat部署war包过程 1.官网下载tomcat安装包.gz结尾的 2.上传到/usr/local/ ,并解压到tomcat目录下 3.进入tomcat/bin目录,运行./ ...
 - tomcat本地部署war包的方式
		
最近学习java,在本地tomcat部署时,主要采取以下方式: 一.本地构建生成war包 在本地项目中的terminal下,使用命令 “mvn clean install”或 先执行“mvn clea ...
 - Linux tomcat部署War包,Linux在Tomcat部署JavaWeb项目,Linux部署War包
		
Linux tomcat部署War包,Linux在Tomcat部署JavaWeb项目,Linux部署War包 >>>>>>>>>>>& ...
 - Docker容器Tomcat部署war包
		
在docker容器中使用tomcat部署war包主要包括四个步骤,创建tomcat容器.上传war包到容器.重启容器.访问应用. 1.创建tomcat容器 使用docker run -d --nam ...
 - 持续集成之Jenkins自动部署war包到远程服务器
		
一.无war包链接的情况 无war包链接时,需先下载war包到本地,然后执行: ---------------------------------------------以下部分为转载-------- ...
 - Jboss7或者wildfly部署war包的问题
		
如果在Jboss7或者wildfly中部署war包是遇到类似如下错误: "{"JBAS014671: Failed services" => {"jbos ...
 
随机推荐
- FluentValidation 验证(一):WebApi 中使用 基本使用
			
FluentValidation.AspNetCore 引入包 public class Login2RequestValidator : AbstractValidator<Login2Req ...
 - 题解 CF1011B  Planning The Expedition
			
Solution 考虑 二分 . 首先要确定二分的对象,显然二分天数较为简单. 每次找到的 \(mid\) 需要判断是否能让整队人吃饱,那就调用一个 check() . 对于 check() ,求出每 ...
 - nginx 客户端返回499的错误码
			
我们服务器客户端一直有返回错误码499的日志,以前觉得比例不高,就没有仔细查过,最近有领导问这个问题,为什么耗时只有0.0几秒,为啥还499了?最近几天就把这个问题跟踪定位了一下,这里做个记录 网络架 ...
 - 成熟企业级开源监控解决方案Zabbix6.2关键功能实战-上
			
@ 目录 概述 定义 监控作用 使用理解 监控对象和指标 架构组成 常用监控软件分析 版本选型 俗语 安装 部署方式 部署 zabbix-agent 概述 定义 Zabbix 官网地址 https:/ ...
 - python-代码编程规范
			
命名 常用简写 名称相关 # 信息 information: info # 功能 function : func # 数量 quantity:qty PYQT相关 button : btn_ chec ...
 - LoadRunner11脚本小技能之同步/异步接口分离+批量替换请求头
			
最近在公司又进行了一次LoadRunner11性能测试,技能又get了一点,继续Mark起来!!! 一.异步/同步接口分离 之前在另一篇博文中有提到"事务拆分"的小节,即一个htm ...
 - ValidList
			
package com.dlzb.enterprising.config; import javax.validation.Valid; import java.util.*; public clas ...
 - 【笔记】CF1251E Voting 及相关
			
题目传送门 贪心: 一个人 \(i\) 要投票,两种情况:花钱,或当前的人数达到了 \(m_i\). 而当前达到 \(m_i\) 的话所有 \(m_j \le m_i\) 也就达到要求了. 所以考虑将 ...
 - Linux Framebuffer 实验
			
一.准备 linux虚拟机或ARM开发板 Ubuntu18.04 二.Framebuffer介绍 次笔记主要的目的是实验,所以我不介绍了,有需要的小伙伴可以去看下面博客 Linux LCD Framb ...
 - mindxdl--common--log_record.go
			
// Copyright (c) 2021. Huawei Technologies Co., Ltd. All rights reserved.// Package common define co ...