JavaWeb项目的部署以及远程调试
Linux环境下软件的安装
Linux环境下的程序的安装、更新、卸载和查看。
- rpm 命令:相当于windows程序的添加/卸载程序,进程程序的安装,查看,卸载。
- 本地程序安装:rpm -ivh 程序名
- 本地程序查看:rpm -qa
- 本地程序卸载:rpm -e --nodeps 程序名
- yum 命令:相当于可以联网的rpm命令,相当于联网下程序的安装和更新,自动执行rpm命令
JDK的安装
1. 查看当前Linux系统是否已经安装java,输入 rpm -qa | grep -i java

2. 卸载两个openJDK,输入rpm -e --nodeps 要卸载的软件

3. 上传jdk到linux的/usr/local/src/ 路径下
4. 解压jdk,输入:tar -zxvf jdk-8u152-linux-x64.tar.gz
5. 配置jdk环境变量
打开/etc/profile配置文件,输入:vim /etc/profile,添加如下配置
#set java environment
JAVA_HOME=/usr/local/src/jdk1.8.0_152
CLASSPATH=.:$JAVA_HOME/lib.tools.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH
vim命令是vi的增强版,centos7最小安装,默认没有这个命令,安装vim
- 输入rpm -qa 查看系统所有的安装软件
- rpm -qa|grep vim 查看所有安装软件中名字有vim的
- 在线安装vim yum install -y vim*
6. 重新加载/etc/profile配置文件 source /etc/profile,是环境变量生效
MySQL安装
1. 查看CentOS自带的mysql
- 输入 rpm -qa | grep -i mysql
- 输入 rpm -qa | grep mariadb
2. 将自带的mysql卸载
- rpm -e --nodeps 软件名
3. 上传Mysql到linux
- 使用xftp软件将mysql的客户端和服务端都上传上去,传好后就可以进行本地安装了
4. 安装perl依赖环境
- yum install perl
5. 在/usr/local/src/mysql下安装mysql
- 安装服务器端:rpm -ivh MySQL-server-5.6.22-1.el6.i686.rpm
- 安装客户端:rpm -ivh MySQL-client-5.6.22-1.el6.i686.rpm
6. 启动mysql
- service mysql start
7. 登录mysql
- mysql –uroot –p 默认密码为空
8. 修改mysql密码
- /usr/bin/mysqladmin -u用户名 -p 旧密码 -password 新密码
- mysqladmin -uroot -password ab12 因为开始时root没有密码,所以-p旧密码一项就可以省略了。
9. 开启mysql的远程登录
- 默认情况下mysql为安全起见,不支持远程登录mysql,所以需要设置开启远程登录mysql的权限
- 登录mysql后输入如下命令:
- grant all privileges on *.* to 'root' @'%' identified by '123';
- flush privileges;
10. 开放Linux的对外访问的端口3306,将修改永久保存到防火墙中
- 查看当前防火墙状态:systemctl status firewalld
- 运行命令,可以看到zone名称:firewall-cmd --get-active-zones
- 执行如下命令命令:firewall-cmd --zone=public --add-port=3306/tcp --permanent
- 重启防火墙,运行命令:firewall-cmd --reload
- 查看端口号是否开启,运行命令:firewall-cmd --query-port=3306/tcp
- 除此之外,若需要关闭当前防火墙:systemctl stop firewalld,如需要开机防火墙不启动:systemctl disable firewalld
Tomcat安装
tomcat的安装比较简单,直接将tomcat.tar.gz压缩包上传到指定的路径下后,使用tar -zxvf 您的tomcat压缩包进行解压可以了,进入tomcat的bin下启动:./startup.sh,进入tomcat的bin下关闭:./shutdown.sh。
JavaWeb项目的部署
部署
将您需要部署的项目,在IDEA中使用maven打包,在打包之前线clean一下,再进行package

打包完成后,在target目录下会出现一下war包,将该war包上传到您的Linux服务器上的tomcat的webapp目录下,进入tomcat的bin下执行关闭后(/shutdown.sh),再重新启动tomcat(./startup.sh)。tomcat就会自动为我们解压了,我们就可以访问了。
端口转发
为了避免输入麻烦的端口号,我们如何不使用nginx,将80端口转发至8080端口,并让他永久生效呢。在centOS7之前,我么可以使用iptables来进行转发,但CentOs7之后就取消了。但我们可以通过安装iptables.service来进行设置,执行如下命令:
systemctl stop firewalld #关闭防火墙
systemctl disable firewalld #禁止防火墙开机启动
yum install iptables-service #安装
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080 #将80端口转发至8080端口
service iptables save
systemctl restart iptables.service
systemctl enable iptables.service

本地调试远程程序
服务器端配置
由于Linux系统中root启动的进程是不支持远程调试的,我们需要创建一个普通账号来启动程序,并且用该账号重新装一个tomcat,步骤如下:
- adduser work
- passwd work 设置密码为work,会让你确认密码和再次输入密码,要保持一致
- 停掉当前root启动的tomcat
- 切换账号 su work,进入到根目录 cd ~,上传一个tomcat到work账号的根目录并进行解压,修改配置文件的信息 vim bin/catalina.sh
- 由于远程调试账号的tomcat的端口号不能小于1000,所有我们需要对tomcat的bin目录下的catalina.sh文件添加如下配置:

- 由于远程调试账号的tomcat的端口号不能小于1000,所有我们需要对tomcat的bin目录下的catalina.sh文件添加如下配置:
CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,address=8888,server=y,suspend=n"
- 重启tomcat,我是腾讯云服务器,需要在控制台的安全组策略打开8888端口

IDEA配置
使用IDEA调试远程程序,需要在Run/EditConfidurations中添加Remote,并设置你需要调试的项目,以及该项目所在的远程主机和端口,如下图:



然后启动远程调试,如果控制台出现:Connected to the target VM, address: 'ip地址:8888', transport: 'socket',就说明链接成功,然后在你需要调试的接口打上断点,在浏览器中请求改接口,就会进入该断点,我们就可以看到调试信息了。


JavaWeb项目的部署以及远程调试的更多相关文章
- SpringBoot工程+热部署进行远程调试
本文转载自:https://blog.csdn.net/qq_31868349/article/details/78553901 SpringBoot工程+热部署进行远程调试 本地端添加配置 在pom ...
- Java项目部署与远程调试两三事
[开启和进行远程调试]参考https://blog.csdn.net/WSYW126/article/details/748536801.tomcat:配置catalina.sh jpda参数,主要是 ...
- JavaWeb项目自动部署,持续集成
来公司以后,学会两种JavaWeb项目,自动部署. 1.jenkins持续集成.自动化部署 (1)安装jenkins----------推荐nginx跳转方式,以域名方式 (2)nginx采用不同域名 ...
- springboot项目使用idea开启远程调试
远程调试是调试服务器的有效手段,远程服务器运行的应用可以在本地代码中打断点调试,能让开发人员准确定位服务器上的问题. 一.开启远程调试前提:本地代码与服务器代码一致, 二.开启远程调试步骤 1.开发工 ...
- 七. jenkins部署springboot项目(4)-linux环境--远程调试
前提:linux环境,jenkins服务器和springboot服务器不在一台机器. linux环境,jenkins这里就不说了,主要说下和windows环境的不同. 1. jenkins服务器连接s ...
- Eclipse下配置javaweb项目快速部署到tomcat
用惯了VS,再用Eclipse,完全有一种从自动挡到手动挡的感觉啊. 很多同学在Eclipse下开发web项目,每一次修改代码,看效果的时候都有右键项目->Run as -> Run on ...
- 非常简单的部署脚本(JavaWeb项目)和部署项目教程
这个部署方式,前提需要通过WinSCP工具将本地Maven项目打成zip包放到Linux对应的用户目录下,然后执行脚本便可以完成一键部署. 大家看到下面的脚本,可以发现一个显著的特点,部署脚本内容基本 ...
- 基于maven的JavaWeb项目构建部署
需要准备的安装文件: 1 JDk http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html jdk-8 ...
- Maven项目配置tomcat插件实现项目自动部署到远程服务器
1.tomcat配置 在tomcat目录中的conf目录下找到tomcat-users.xml配置文件,然后搜索tomcat-users,进行tomcat用户的角色和权限配置,如下: <tomc ...
随机推荐
- C# 跨平台UI 技术
构建跨平台应用程序的的几种UI技术,以C# 或者其他基于.NET的 语言(诸如:Visual Basic[VB]).本文研究了三种跨平台技术,并讨论了在哪些情况下开发人员可以使用这些技术.本文使你对可 ...
- webpack正式、测试环境接口地址本地运行及打包命令配置
声明:本文由w3h5原创,转载请注明出处:<webpack正式.测试环境接口地址本地运行及打包命令配置> https://www.w3h5.com/post/521.html 为了方便开发 ...
- 蜂鸟E203系列——Linux开发工具
欲观原文,请君移步 Vivado安装 vivado是运行工程的工具,所以必须安装 后台回复[vivado2017]可获取vivado 2017.4 | 后台回复[vivado2020]可获取vitis ...
- day32 异常处理、网络编程
目录 一.异常处理 1 什么是异常 2 为什么要处理异常 3 如何处理异常 3.1 语法错误 3.2 逻辑错误 3.3 两种处理逻辑异常的方式 3.3.1 可预知型错误 3.3.2 不可预知型错误 4 ...
- Python函数02/函数的动态参数/函数的注释/名称空间/函数的嵌套/global以及nolocal的用法
Python函数02/函数的动态参数/函数的注释/名称空间/函数的嵌套/global以及nolocal的用法 目录 Python函数02/函数的动态参数/函数的注释/名称空间/函数的嵌套/global ...
- JavaScript 基础 学习 (一)
JavaScript 基础 学习 获取页面中的元素的方法 作用:通过各种方式获取页面中的元素 比如:id,类名,标签名,选择器 的方式来获取元素 伪数组: 长的和数组差不多,也是按照索引排 ...
- Java图片验证码生成工具
直接把以下代码拷贝使用: import javax.imageio.ImageIO;import java.awt.*;import java.awt.image.BufferedImage;impo ...
- python实现图片文字提取,准确率高达99%,强无敌!!!
上次我使用的百度AI开放平台的API接口实现图片的转化,后来有许多小伙伴都私信问我,怎么获取百度AI平台的AK和SK.为了统一回答大家的问题,今天我又使用百度API实现了一个从图片中提取文字和识别身份 ...
- bilibili自定义调整视频播放速度
自定义调整视频播放速度 在b站的播放页面,按下f12,打开控制台 在控制台中复制下面代码,想几倍速就把2.5改成你想要的播放速度 document.querySelector('video').pla ...
- 将终结点图添加到你的ASP.NET Core应用程序中
在本文中,我将展示如何使用DfaGraphWriter服务在ASP.NET Core 3.0应用程序中可视化你的终结点路由.上面文章我向您演示了如何生成一个有向图(如我上篇文章中所示),可以使用Gra ...