[经验] 如何将 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项目->发布
随机推荐
- java框架-Mybatis
一.Mybatis介绍 mybatis是一个持久层的框架,是对JDBC操作数据库的封装,使开发者只需要关注业务本身,不需要花费精力去处理加载驱动.创建数据库连接对象.创建statement语句对象.参 ...
- Maven安装与学习
一.安装 1.下载http://maven.apache.org/download.cgi 2.选择zip格式 安装完后解压到某一位置(E:\xitong\major\apache-maven-3.6 ...
- vue使用axios访问后台接口
链接1:https://segmentfault.com/a/1190000012635783#item-2 // axios 使用post方式传递参数,后端接受不到,怎么解决 链接2:http ...
- 转载UUID.randomUUID()
UUID.randomUUID()生成唯一识别码 原创 清晨-阳光zx 最后发布于2019-04-11 20:54:40 阅读数 3039 收藏 发布于2019-04-11 20:54:40 分类专栏 ...
- Python学习(七)——匿名函数、map函数、filter函数、reduce函数与其他内置函数
匿名函数 lambda x: x + 1 # lambda:定义匿名函数的关键字 # x:形参 # x+1:程序处理逻辑 fun = lambda x: x + 1 print(fun(5)) #6 ...
- 如何将博客内容输出到pdf
可以按照三类网页插件:Clearly,Instapaper 和 Readability,实际安装发现,第一个装不上,只有最后一个好用.在firefox或者chrom浏览器装好后,右键switch to ...
- Springboot的多环境配置
通常应用都会被安装到几个不同的环境(比如开发.测试.生产等),每个环境都会有一些参数是不一样的. Spring Boot对此也提供了支持,配置文件的名称只要满足application-{profile ...
- 用 async/await 来处理异步(转)
昨天看了一篇vue的教程,作者用async/ await来发送异步请求,从服务端获取数据,代码很简洁,同时async/await 已经被标准化,是时候学习一下了. 先说一下async的用法,它作为一个 ...
- 【C语言】(指针) 将两个数排序
原理就不讲了,这里用来理解指针的使用方法 代码1: #include <stdio.h> int main() { int a, b;/* 实际变量的声明 */ int* p, * q;/ ...
- 流式计算(三)-Flink Stream 篇一
原创文章,谢绝任何形式转载,否则追究法律责任! 流的世界,有点乱,群雄逐鹿,流实在太多,看完这个马上又冒出一个,也不知哪个才是真正的牛,据说Flink是位重量级选手,能流计算,还能批处理, 和其他伙 ...