如何把在eclipse/idea上写好的web项目发布到云服务器上?【精简全流程+错误汇总】

     本次流程绝大部分会讲服务器的安装与配置,这块内容比较多。

1,安装java

     因为tomcat服务器是依赖于java的,所以要安装java,但这里有一个非常重要的事情就是一定要保证你的项目使用的jdk版本和你tomcat所依赖的jdk版本是一样的!!!这个问题会在问题汇总时详细说明。
     一般来说就都是自己下载的tar.gz压缩包,这里直接给大家提供jdk1.8云盘的,提取码 c2jk
jdk-8u162-linux-x64.tar.gz
     然后传到自己的云服务器上(我之前的博客有教程),之后解压,这些都是基操,重要的是配置环境变量:(所用到的常见Linux指令在这里)

  • sudo -s (先将我们的权限改为root管理员)
  • vim /etc/profile
    打开这个文件之后在末尾加上
export JAVA_HOME=/java/jdk1.8.0_162
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

在这里插入图片描述
其中只需要将JAVA_HOME的值改为你的jdk的绝对路径就行了,不过要注意两点:

  1. 首先是在linux控制台手写这些信息,不要复制粘贴到该文件,因为有肯能出现编码错误,导致变量失效。
  2. 其次=号前后不要加空格,否则有可能导致变量失效

之后编辑后,:wq保存退出

  • source /etc/profile (该命令让刚才修改的配置信息生效)

  • echo $JAVA_HOME
    echo $PATH
    echo $CLASSPATH
    这三个指令可以输出刚刚配置的环境变量信息

  • java -version
    这个指令输出java的基本信息
    在这里插入图片描述
    输出了最后的信息就说明java的环境变量已经配好了,现在java可以使用了。

2,安装tomcat

这个可以直接去官网下载,下面也会放上链接(官网):
不过大家先看好自己的版本,一般idea创建的是web4.0的项目,使用tomcat9.0,eclipse创建的是3.0/3.1的web项目,使用tomcat8.5就可以了,jdk都使用1.8足够。
apache-tomcat-8.5.45.tar.gz
apache-tomcat-9.0.24.tar.gz
在这里插入图片描述
下载完之后也是上传到服务器,并解压。
       这里由于tomcat是解压的方式,而且自身没有添加服务的步骤,所以我们需要手动启动tomcat,而且每次重启服务器都需要开启tomcat。具体步骤:

  • 打开解压出来的文件夹(apache-tomcat-x.x.xx),目录结构和你电脑本地的tomcat是一致,文件夹所放的东西,配置文件、信息也基本一致。

  • 打开conf,里面的值基础配置信息,server.xml、content.xml、web.xml等等,你本地怎么配的,这里就怎么配

  • 打开lib,你本地加了什么jar包,这里就再加什么jar包

  • 打开bin文件,里面有startup.shshutdown.sh,这两个就是开启和关闭tomcat服务器。(注意:如果你不是root管理员可能进不去bin文件夹)
    在这里插入图片描述

  • 在bin文件夹下,输入 ./startup.sh 可以开启服务器
    在这里插入图片描述
    出现这些说明开启成功。(此处可能会有出错的,错误汇总里会详细说)

    输入 ./shutdown.sh 可以关闭服务器
    在这里插入图片描述
    出现这些说明关闭成功(此处可能会有出错的,错误汇总里会详细说)

  • 当我们开启tomcat服务器之后,就可以使用ip/域名+端口,访问tomcat主页了:

在这里插入图片描述

  • 出现上述图片之后,就说明tomcat已经基本配置好了。

3、安装mysql(如果你的项目有需要)

       普通解压安装mysql的步骤繁多,麻烦,而且自己也要配置好多东西,这里给家推荐使用官方推荐的傻瓜安装(默认是最新版mysql):
在这里插入图片描述
就是这个东西,推荐大家参考这个文章,简单详细:
ubuntu18.04安装mysql8.0.16(Community),内附详细说明适合小白学习哦

4、发布web项目

       在eclipse/idea中将web项目打包为war文件,上传到linux服务器中的你的tomcat目录下的webapps中,直接粘贴过去就行,然后重启tomcat服务器,会自动把你的war文件解析为文件夹(名字和你的war一致,一般就是项目名),之后就可以 使用 ip/域名+端口/文件夹名 进行访问了。(如果进入网页后提示java文件如Servlet找不到,报404,那么请看下面的错误汇总)

5、错误汇总

  • 在配置完java信息后,输入java -version时报错,提示没有找到java指令:
    在这里插入图片描述
    在保证配置信息正确完全的情况下,输入 source etc/profile 即可,以后也有可能会出现这种情况,都再输入一次source etc/profile 即可。

  • 在开启/关闭tomcat服务器时,提示 “Neither the JAVA_HOME nor the JRE_HOME environment variable is defined ” , 用 vim 打开tomcat的bin目录下的setclasspath.sh,添加JAVA_HOMEJRE_HOME两个环境变量,两个环境变量路径为您安装的jdk的路径,如图(我放在了开头):
    在这里插入图片描述

  • 上述步骤之后提示 bad variable name ,出现这个的原因可能是你在写配置信息的时候等号前后自己打了空格,可能是个人习惯造成的,写配置信息时等号前后不需要空格

  • 进入自己发布的web项目后(主页可以正常进入),提示Server找不到(等一些java文件),报404,这个很大概率就是服务器jdk和自己在写项目时用的jdk不一致(我当时本地写用的jdk10,云服务器用的1.8就出现这个情况),看日志如果报错这个:
    servlet/SearchServlet has been compiled by a more recent version of the Java Runtime (class file version 5x.0), this version of the Java Runtime only recognizes class file versions up to 5x.0 (unable to load class)
    基本上就是jdk版本不一样了,解决方法要么是换你云服务器上的jdk,要么是你换本地的jdk,重新配置tomcat,重新建项目,再导出war。

  • 第一次安装完mysql之后是禁止远程访问的,如果自己有需要进行远程访问的,大家可以去搜搜其他博主写的,很多,这里我就不说了

猜你喜欢

转载自blog.csdn.net/weixin_42822484/article/details/100146731