[经验] 如何将 Java 项目发布到云服务器上并可以访问
环境:
云服务器 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 项目发布到云服务器上并可以访问的更多相关文章
- java项目发布到linux服务器,tomcat正常启动但没加载项目
问题描述: java项目发布到linux服务器,一切操作正确,linux命令启动tomcat后,查看日志启动tomcat正常,上传的war包已经解压成功,但是tomcat没加载项目. 解决方法: 1. ...
- JAVA项目部署到云服务器
转自:(此处更详细)http://blog.csdn.net/gulu_gulu_jp/article/details/50994003 一.前言 前面我们已经尝过了在云服务器上部署代码的甜头了,现在 ...
- 部署Java项目到阿里云服务器(Ubuntu16.04 64位)
生成Jar包 1.进入到项目所在的路径下,打开cmd命令控制台,使用如下命令打包项目. mvn package --前提将项目中使用的maven配置到系统的环境变量中 2.打包完成的jar包在项目目录 ...
- 部署java项目到阿里云服务器(centos7版本)
一.搭建环境 1.搭建java环境(64位) 一.准备压缩包,rpm包或者tar包,将其上传到阿里云对应的文件夹(我用的工具是WinSCP,百度一下就有下载资源) 二.若是rpm包,可以通过 rpm ...
- vue3+node全栈项目部署到云服务器
一.前言 最近在B站学习了一下全栈开发,使用到的技术栈是Vue+Element+Express+MongoDB,为了让自己学的第一个全栈项目落地,于是想着把该项目部署到阿里云服务器.经过网上一番搜索和 ...
- 将web项目部署到阿里云服务器上
一.用eclipse将写好的项目打成war包 1.右键点击项目,选择Export 选择打包之后的路径,点击Finsh. 2.购买阿里云服务器 按下图选择 3.设置云服务器防火墙 4.远程连接云服务器 ...
- 怎样将本地web项目部署到腾讯云服务器上?
怎样将本地web项目部署到腾讯云服务器上? 1.本地计算机的工作: (1).用eclipse新建一个web项目,然后在webcontent下新建一个index.html,然后在本地部署到Tomcat服 ...
- 群晖下 gitea+drone+harbor实现CI/CD 发布到云服务器
常用命令 sudo -i然后输入密码登录root账户(群晖默认只能使用admin账号登陆) vim xxx编辑(编辑是进去之后按i,退出并保存是按esc,然后:wq!再回车) mkdir xx创建文件 ...
- 本地MVC项目发布到IIS服务器
0瞎扯 朋友们有时候我们写个一个web程序只能使用卡西尼服务器调试,下面我教大家发布到IIS服务器上(包括本地ISS7.5和远程服务器 IIS) 1.VS发布 a.点击web项目->发布
随机推荐
- MySql 怎么存取 Emoji
01.前言 Emoji 在我们生活中真的是越来越常见了,几乎每次发消息的时候不带个 Emoji,总觉得少了点什么,似乎干巴巴的文字已经无法承载我们丰富的感情了.对于我们开发者来说,如何将 Emoji ...
- Spring Boot中快速操作Mongodb
Spring Boot中快速操作Mongodb 在Spring Boot中集成Mongodb非常简单,只需要加入Mongodb的Starter包即可,代码如下: <dependency> ...
- Python实现AVL树
参考: https://www.cnblogs.com/linxiyue/p/3659448.html?utm_source=tuicool&utm_medium=referral class ...
- CSS学习(4)常见样式声明
1.文本 color 文字颜色 预设值:定义好的单词,如red blue 光学的三原色(红,绿,蓝),如 rgb(32,45,255) HEX十六进制,如#008CFF(#112233可以简写为#12 ...
- SOCV/POCV 开篇 (1)
1.功能:模拟工艺偏差对芯片性能的影响 2. 40nm之前 flat derate模型可以基本覆盖大部分情况 3.AOCV (Adance OCV) 考虑distance 和depth的影响. AOC ...
- mapreduce课上实验
今天我们课上做了一个关于数据清洗的实验,具体实验内容如下: 1.数据清洗:按照进行数据清洗,并将清洗后的数据导入hive数据库中: 2.数据处理: ·统计最受欢迎的视频/文章的Top10访问次数 (v ...
- flask使用websocket
# flask使用websocket 1.概述 flask实现websocket有两种方式:flask_sockets,Flask-SocketIO. flask_sockets:该方式是flask对 ...
- Truffle 快速构建 DApp
简单介绍 官网传送门 Truffle是针对基于以太坊的Solidity语言的一套开发框架.本身基于Javascript,使用以太坊虚拟机(EVM)的世界一流的开发环境,用于区块链的测试框架和资产管道 ...
- java篇 之 变量存放位置
一:在方法中声明的变量,即该变量是局部变量,每当程序调用方法时,系统都会为该方法建立一个方法栈,其所在方法中声明的变量就放在方法栈中,当方法结束系统会释放方法栈,其对应在该方法中声明的变量随着栈的销毁 ...
- Android如何运行他人工程
首先新建一个本地的新工程做对比,用记事本打开以下的几个工程文件,把本地工程文件的内容覆盖掉他人工程的文件内容,注意只覆盖两个工程共有的内容条目即可,不要删掉他人工程的其他依赖!(具体哪几个文件本人还没 ...