从零开始部署本地javaweb项目项目到云服务器,亲测可用


前言

本文记录了如何将本地javaweb项目部署到腾讯云服务器上,环境为IDEA2020.3.2,本地环境为windows10系统,云服务器为ubuntu18系统。项目为安卓手机和服务器建立socket连接通信,用于基本通信环境的测试学习。话不多说,下面开始

一、在本地tomcat发布测试

1.为javaweb项目配置Servlet

为了使得项目中的class可以自启动,需要添加Servlet接口。
为需要处理的类继承HttpServlet,并添加init方法。

public class TestServer extends HttpServlet{
    public void init(){
        System.out.println("web容器已经启动!");
        TestServer server = new TestServer();
        server.initServer();
    }

在web.xml中配置Servlet

    <servlet>
        <servlet-name>TestServer</servlet-name>
        <servlet-class>com.example.comm.TestServer</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>TestServer</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

配置完成后,可以在IDEA中使用tomcat测试结果

2. 导出javaweb项目为war包

点击File->Project Structure->Artifacts, 点击中间栏+号,添加Web Application:Archive项目,更改名字后双击添加所有的Available elements,点击apply,OK
点击Build->Build Artifacts, 即可以在对应目录下找到生成的war包
可以将war包复制到tomcat的webapp文件夹下,启动tomcat后,war包将自动解压成文件夹运行。此时,可以再次测试运行结果。

二、配置云服务器

1. 开放腾讯云8080端口

登录后点击右上角控制台->云服务器->安全组,添加规则,放通TCP:8080端口用于tomcat,以及TCP:22端口用于linux远程登录。也可以顺便打开其他常用端口。
在这里插入图片描述

2.java环境tomcat配置

因为创建图形化界面出了点问题,所以jdk和tomcat的安装压缩包直接通过windows上传。
使用putty中的pscp工具,在windows下的cmd中使用以下命令,注意前面要加上-P 22,22为端口号,同时路径中尽量不要有中文,xxxxxx部分为ip地址。

E:\Program Files\PuTTY>pscp -P 22 E:\ubuntu\apache-tomcat-8.5.64.tar.gz username@xxxxxxxx:/home/username

同理,上传jdk的tar.gz文件到home文件夹下

sudo mkdir /java	//创建java目录
sudo mv jdk-8u121-linux-x64.tar.gz /java		//移动文件到/java目录下
sudo tar -zxvf jdk-8u121-linux-x64.tar.gz	//解压文件
sudo vim /etc/profile		//配置所有用户的环境变量

在文件的最后添加:

#set Java environment
export JAVA_HOME=/java/jdk1.8.0_56
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

配置完成后使用source让配置文件生效

source /etc/profile 

最后运行,查看java是否安装成功

java -version

tomcat解压安装完毕后
进入/tomcat/apache-tomcat-8.5.64/bin 文件夹下,编辑文件startup.sh,在最后一行之前加入

#set Java environment
export JAVA_HOME=/java/jdk1.8.0_56
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
#tomcat
export TOMCAT_HOME=/home/username/tomcat/apache-tomcat-8.5.34

完成后保存,然后运行startup.sh启动tomcat,不过tomcat started有可能不是真正的启动成功

sudo ./startup.sh

如果需要看debug的运行结果,运行

./catalina.sh run

然后在浏览器中访问服务器地址:8080

3.java中没有jre的配置文件解决方案

由于JDK10以上的版本都没有jre文件夹,可以手动生成一个
在java根目录下执行,本文中/java/jdk-11.0.10

sudo bin/jlink --module-path jmods --add-modules java.desktop --output jre  

虽然生成jre文件夹成功,但这个方法对我尝试无效
采用下面的方法:

把上面两个配置文件中的JRE_HOME都改为$JAVA_HOME

#export JRE_HOME=$JAVA_HOME/jre 
#修改为
export JRE_HOME=$JAVA_HOME

此时,在本地浏览器中访问服务器地址:8080, tomcat启动成功

三、项目部署到云服务器上

使用pscp将war包上传到服务器上,把war包使用cp命令拷贝到tomcat的webapps文件夹下,启动tomcat。
打开浏览器,输入ip地址:8080/war包的名称,javaweb程序就可以自动运行啦!通信测试成功。
文章中安卓端和后台端的socket代码,参考以下链接
https://blog.csdn.net/aqi00/article/details/86421940

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值