环境:

云服务器 Linux centos7.6

1: 安装 Tomcat  (apache-tomcat-9.0.26.tar.gz)

下载压缩包 --> 通过SSH上传到云服务器 --> 移动到 /usr/local 目录下 --> 解压, 然后将解压后的文件夹名改为 tomcat --> 完成
关于如何连接 ssh: https://www.cnblogs.com/unityworld/p/11182616.html

2: 创建一个 Java 项目

(1) 用 IDEA  创建一个 SpringBoot 项目

(2) 创建一个 数据访问接口

/***
* @Description //TODO 提供测试功能的数据接口 $
* @Author ----> 苍之弦
* @Data ----> Create in 2019/10/29 0029 17:52
*/
@Controller
@RequestMapping("test")
public class TestController {
private static Logger LOGGER = LoggerFactory.getLogger(TestController.class); @RequestMapping(value = "test", method = RequestMethod.GET, produces = "applications/json;charset=UTF-8")
public String test(){
return "hello Linux user!";
}
}

(3) 将项目打包

先看看 pom.xml 的配置, 这里只贴出构建项目相关的模块, 其他部分不做展示, 自行调整

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.</modelVersion> <!-- 项目父依赖 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1..RELEASE</version>
<relativePath/>
</parent> <!-- build项目配置 -->
<groupId>cn</groupId>
<artifactId>server</artifactId>
<version>1.0.-SNAPSHOT</version>
<packaging>war</packaging> <---------- 这里是设置包的类型, 至于是 jar包, 还是 war包, 看项目需要吧, 不过这里我使用的是 war包 <!-- 项目构建配置 -->
<build>
<finalName>[这里写你希望打包的包名]</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>

然后开始构建包

先点击第一步的按钮, 等下方的控制台上出现  build success 的时候就可以开始第二步了, 点击第二步, 等个几十秒, 打包完成后去项目文件目录下找到 target 文件夹, 项目打好的包就在这里, 当然上面的步骤是可以忽略不计的, 因为会的应该也会, 不会的应该也还没到这一步,找到  ***.war 文件, 通过 ssh 工具上传到 /usr/local/tomcat/webapp 目录下

cd /use/local/tomcat/bin 进入 bin目录
./startup.sh        启动 Tomcat 服务器

在不对 Tomcat 的配置进行任何修改的情况下, 在浏览器的地址栏输入接口地址

http://[服务器公网IP地址]:8080/[项目名称]/test/test

项目名称就是 war 包在 webapp 目录下解压后的文件夹的名称, 后面的第一个 test 是控制器的映射名称, 第二个 test 是函数的映射名称, 输入这个地址的意思就是访问相应服务器地址下的某个项目的某个接口里的某个函数

访问成功, 如果没成功的话, 用SSH连接服务器操作一下, 需要 ROOT 权限哦

firewall-cmd --zone=public --add-port=/tcp --permanent   开启 Tomcat 的 8080 端口

firewall-cmd --reload                         重启 防火墙

firewall-cmd --zone=public --query-port=8080/tcp        检查 8080 端口是否开启成功

[经验] 如何将 Java 项目发布到云服务器上并可以访问的更多相关文章

  1. java项目发布到linux服务器,tomcat正常启动但没加载项目

    问题描述: java项目发布到linux服务器,一切操作正确,linux命令启动tomcat后,查看日志启动tomcat正常,上传的war包已经解压成功,但是tomcat没加载项目. 解决方法: 1. ...

  2. JAVA项目部署到云服务器

    转自:(此处更详细)http://blog.csdn.net/gulu_gulu_jp/article/details/50994003 一.前言 前面我们已经尝过了在云服务器上部署代码的甜头了,现在 ...

  3. 部署Java项目到阿里云服务器(Ubuntu16.04 64位)

    生成Jar包 1.进入到项目所在的路径下,打开cmd命令控制台,使用如下命令打包项目. mvn package --前提将项目中使用的maven配置到系统的环境变量中 2.打包完成的jar包在项目目录 ...

  4. 部署java项目到阿里云服务器(centos7版本)

    一.搭建环境 1.搭建java环境(64位) 一.准备压缩包,rpm包或者tar包,将其上传到阿里云对应的文件夹(我用的工具是WinSCP,百度一下就有下载资源) 二.若是rpm包,可以通过 rpm ...

  5. vue3+node全栈项目部署到云服务器

    一.前言 最近在B站学习了一下全栈开发,使用到的技术栈是Vue+Element+Express+MongoDB,为了让自己学的第一个全栈项目落地,于是想着把该项目部署到阿里云服务器.经过网上一番搜索和 ...

  6. 将web项目部署到阿里云服务器上

    一.用eclipse将写好的项目打成war包 1.右键点击项目,选择Export 选择打包之后的路径,点击Finsh. 2.购买阿里云服务器 按下图选择 3.设置云服务器防火墙 4.远程连接云服务器 ...

  7. 怎样将本地web项目部署到腾讯云服务器上?

    怎样将本地web项目部署到腾讯云服务器上? 1.本地计算机的工作: (1).用eclipse新建一个web项目,然后在webcontent下新建一个index.html,然后在本地部署到Tomcat服 ...

  8. 群晖下 gitea+drone+harbor实现CI/CD 发布到云服务器

    常用命令 sudo -i然后输入密码登录root账户(群晖默认只能使用admin账号登陆) vim xxx编辑(编辑是进去之后按i,退出并保存是按esc,然后:wq!再回车) mkdir xx创建文件 ...

  9. 本地MVC项目发布到IIS服务器

    0瞎扯 朋友们有时候我们写个一个web程序只能使用卡西尼服务器调试,下面我教大家发布到IIS服务器上(包括本地ISS7.5和远程服务器 IIS) 1.VS发布 a.点击web项目->发布

随机推荐

  1. 【转载】Java集合容器全面分析

    转自:http://blog.csdn.net/garfielder007/article/details/52143803 简介: 集合类Collection不是Java的核心类,是Java的扩展类 ...

  2. 安全文件传输协议之SFTP的使用

    一.SFTP概述 在前几篇文章,我们讲到了文件传输协议FTP(File Transfer Protocol),那也是使用比较广泛的文件服务器,但是我们需要知道,Linux系统并不自带FTP程序 如果要 ...

  3. c#中的栈(stack)与队列(queue)

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  4. Abp.Core运行时提示XX没有实现,或者没有依赖注入的问题,或者调试时提示做出更改的问题

    因为abp的web层对application层有项目引用,但是对domain层并不存在项目引用,而是bin目录下直接引用的dll文件,所以当domain层修改后不会自动将dll文件同步过去.所以有时候 ...

  5. the MTS failed last time时的解决办法

    关于6.6.3SP2版本提示The MTS failed last time 1.1    发生前提条件 在重启系统 shutdown -r now后,网页打不开,发现MTS服务无法启动,我自己涉及的 ...

  6. Codeforces Round #598 (Div. 3) F. Equalizing Two Strings

    You are given two strings ss and tt both of length nn and both consisting of lowercase Latin letters ...

  7. P&R 7

    Floorplan: 要做好floorplan需要掌握哪些知识跟技能? 通常,遇到floorplan问题,大致的debug步骤跟方法有哪些? 如何衡量floorplan的QA? [哥简单点说]:flo ...

  8. Unity引用System.Windows.Forms遇到的一些坑

    这两天在做一个unity打开文件选择框的功能.网上找到两种方法, 第一种是调用win32打开对话框,这个挺好,但是有个致命的问题,没办法多选!!!多选的话返回的是根目录的路径,文件名返回不了,找了半天 ...

  9. django model 高级进阶

    十.model高级用法: 10.1 ORM映射: Object Relational Mapping: orm映射的任务: 将list ,object 的操作转化为sql语句,根据对象生成数据表,将查 ...

  10. jmeter的使用---压力测试

    jmeter用于压力测试 首先我们要区别压力和攻击,当设立了不适当的线程数量和准备时长,就容易造成攻击. 线程数:虚拟用户数.一个虚拟用户占用一个进程或线程.设置多少虚拟用户数在这里也就是设置多少个线 ...