Java Web项目部署至Linux服务器的步骤及问题详解

        部门接手公司内部需求的一个小项目,从设计到研发自主完成,期间遇到了不少困难。部署过程也是坎坷,特此写篇文章记录一下,也为新手们填个坑~高手请跳过~~

一、部署环境搭建(此步骤参考

        本人使用的公司內建的服务器,如有需求,可使用阿里云等云服务商的云主机,购买过程什么的就不说了,各位可以自行百度。下面主要介绍Java Web运行环境的搭建。

1、安装JDK

step1:下载JDK,由于部署的服务器是linux,所以选择x86的tar.gz包;下载完成后传到linux的目录下(本人放置的目录为/usr/java)

step2:解压jdk的tar文件到指定的目录

step3:配置环境变量

vi /etc/profile

添加如下代码

#set java environment
export JAVA_HOME=/usr/java/jdk/jdk1.8.0_161
export JRE_HOME=/usr/java/jdk/jdk1.8.0_161/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$JAVA_HOME:$PATH

保存后执行

source /etc/profile

step4:验证安装是否成功

输入

java -version

出现如下界面即说明安装成功


2、安装Tomcat

step1:下载Tomcat,上传至服务器的相关目录下(本人的是/usr/java/tomcat)

step2:解压tomcat的tar文件到指定的目录

tar zxvf  apache-tomcat-7.0.85

step3:配置Tomcat环境

进入Tomcat文件夹的bin目录下,打开setclasspath.sh

vi setclasspath.sh

添加路径

export JAVA_HOME=/usr/java/jdk/jdk1.8.0_161
export JRE_HOME=/usr/java/jdk/jdk1.8.0_161/jre

保存后返回bin目录下执行

./startup.sh 

step4:验证安装是否成功

出现如下界面说明安装成功


或输入IP:8080访问


至此部署环境就搭建好了,下面介绍将java web部署至服务器

二、上传Java Web项目

1、有几种部署方式,本文介绍是最简单的静态部署方式:直接将W eb项目文件拷贝到webapps目录中,其他部署方式请参见:Tomcat部署方式

2、上传方式

Step1:使用eclipse打包war包,右键项目-Export-WAR file


选择路径,一般而言不选择Export  source file


Step2:上传至tomcat的webapps下,会自动解压


step3:访问http://IP:8080/TEST(项目名)即可


三、部署问题详解

部署会出现各种各样的问题,解决的话要看tomcat的log信息,根据报错解决;其中有个log文件比较重要

查看catalina.out

cat catalina.out

以下是我本次部署遇到的问题

1、静态页面可正常显示,凡是涉及数据库交互的页面均报错(本地程序无错误)

报错:java.net.BindException


解决方法:该问题是8005端口被占用,去Tomcat的tomcat/conf/server.xml中修改端口至未被使用的8006,然后重启Tomcat即可


2、数据库连接超时(此解决方法参考

报错:


解决方法:该错误是由于MySql连接超时所致,在JDBC连接代码加入即可

?autoReconnect=true&autoReconnectForPools=true

四、部署更新(此步骤参考

Step1: 停止tomcat 

Step2: 清理tomcat下,webapps的war包解压目录、war包

Step3:上传新的war包

Step4:启动tomcat


五、修改配置文件使得通过访问域名可以直接访问主页

Step1:修改web.xml使得输入IP和端口号和项目名可直接访问项目主页


Step2:修改server.xml使得tomcat的8080端口变为域名默认端口80


Step3:修改server.xml使得tomcat默认为当前项目

在<Host></Host>内添加

<Context docBase="test" path="/" reloadable="true" source="org.eclipse.jst.jee.server:LeanFileUpload"/>


这样就大功告成啦~~~

猜你喜欢

转载自blog.csdn.net/aliyacl/article/details/79753172