使用Maven部署到远程Linux服务器Tomcat

news2024/11/30 2:33:41

一、安装JDK

首先给服务器安装jdk,访问官网下载:Java Downloads | Oracle,下载图中的版本。首先我使用的是tomcat10,最低支持jdk1.8。安装了jdk19,是当时的最新版实测tomcat开启失败,新版jdk也不自带jre,所以建议安装jdk1.8。下面的图是jdk19,然后最后同样的方法又来了一遍jdk1.8成功。

 下载后上传到服务器,找到usr/lib目录,解压压缩包:

tar -zxvf jdk-19_linux-x64_bin.tar.gz

解压之后删除压缩包:

rm -rf jdk-19_linux-x64_bin.tar.gz

配置Java环境变量,修改/etc/profile文件内容即可:(可以使用别的命令,我一般使用vim)

vim /etc/profile

添加如下内容:

export JAVA_HOME=/usr/lib/jdk-19.0.1    最后这个文件夹使用解压后的名字,记得修改!!!
export JRE_HOME=${JAVA_HOME}/jre    
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib    
export PATH=${JAVA_HOME}/bin:$PATH

重新读取环境变量(将新配置立即生效):
 

source /etc/profile

检查java环境变量变量是否成功:
 

java -version

jdk19没有jre,我们进入下面的目录输入命令即可:

cd /usr/lib/jdk-19.0.1
sudo bin/jlink --module-path jmods --add-modules java.desktop --output jre

 二、安装Tomcat

去官网下载压缩包:Apache Tomcat® - Welcome!,选择tar.gz的压缩包。下载上传到服务器后解压:

tar -zxvf apache-tomcat-10.0.27.tar.gz 

然后上传Maven带包好的war包或jar包到webapps目录下即可,然后执行下面命令启动Tomcat:

sudo /opt/apache-tomcat-10.0.27/bin/startup.sh

在bin文件夹无法直接运行startup.sh,执行startup.sh至少要在bin目录下。

然后测试访问即可,项目路径是http://xxx.xxx.xxx.xxx:8080//yyyy.zzz

xxx代表服务器ip,yyyy代表上传项目的war或者jar的名称,zzz是项目里面设置的。

总结:

因为第一遍安装时安装的是jdk19,导致的是tomcat10没有兼容的运行环境,tomcat进程是在运行的,但是8080端口根本没打开。如果怀疑是防火墙之类的网络问题,可以在服务器使用下面的命令测试本地是否可以访问成功:

curl http://localhost:8080

出现下面的情况就是本地访问成功,如果外网访问不成功,可以考虑是否是防火墙的问题。如果本地是访问被拒绝之类的就是Tomcat没有正常运行。

         

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/3191.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Windows上使用QEMU创建aarch64(ARM64)虚拟机

前言 随着国产化的推进,现在采用ARM、MIPS的机器越来越多,作为开发、运维人员要调测软件总不能每种架构的机器都去买一台吧?主要像博主这样的穷B,实在也是承受不起。。 需要的工具 1、QEMU Windows版官网下载地址:…

软件测试最最最重要的事

软件测试用例得出软件测试用例的内容,其次,按照软件测试写作方法,落实到文档中,两者是形式和内容的关系,好的测试用例不仅方便自己和别人查看,而且能帮助设计的时候考虑的更周。 一个好的测试用例必须包含…

Articulate360在线学习课件制作工具

Articulate是一款全新理念的在线和移动学习课件制作工具,可以说是目前国际上用户最广泛的e-learning课件制作工具之一。它包含了全新版的Storyline 360和Rise 360以及大量其他创作应用程序。使用Storyline 360开发可在所有设备上运行的自定义交互式课程,…

Java日志框架的发展历史,你不想了解一下吗

前言 相信大家在项目开发中肯定遇到过log4j,JUL,slf4j,logback,log4j2等日志框架相关名词,这些日志框架之间到底有什么关系,Java日志框架究竟经历了什么样的发展历程,相信有很多人都对此充满了好…

Socket 编程基础

文章目录一、socket 简介二、socket 编程接口介绍1. socket()函数2. bind()函数3. listen()函数4. accept()函数5. connect()函数6. 发送和接收函数read()函数recv()函数write()函数send()函数7. close()关闭套接字三、IP 地址格式转换函数inet_pton()函数inet_ntop()函数本篇会…

决策树与随机森林在分类预测中的应用(附源码)

写在前面 今天给大家分享一下基于决策树和随机森林在乳腺癌分类中实战。决策树和随机森林是白盒模型,数学建模中常用到这两种模型,用于预测或分类,随机森林还可以进行特征选择,故很推荐大家学习!!&#xff…

Qt5.14.2在Windows下使用mysql

第一步:下载依赖 1.1去Qt官方下载Qt5.14.2的源代码: Index of /archive/qt/5.14/5.14.2/singlehttps://download.qt.io/archive/qt/5.14/5.14.2/single/ 下载链接:https://download.qt.io/archive/qt/5.14/5.14.2/single/qt-everywhere-src-5.14.2.zip 1.2去Mysql官网下载Mys…

面试官:说说TCP如何实现可靠传输

今天来讲一下TCP是如何保证可靠传输的。这也是面试常问的一个题目,这个问题不单止能看出你是否真的了解TCP原理,更看出你是否有一个总结的能力。 我们从三个部分来讲TCP是如何实现可靠传输的。 滑动窗口 首先是讲TCP中的滑动窗口,它和TCP的…

基本的Dos命令

基本的Dos命令 打开CMD的方式 开始系统命令提示符win键R输入cmd (推荐使用)在任意的文件夹下,按住Shift键鼠标右击,打开命令行窗口在资源管理器地址栏路径前面加 “cmd ”管理员运行方式:命令提示符右键以管理员身份运行(最高权…

动态规划--01背包问题详解

代码随想录day42和day43 动态规划 模块01背包问题 “即使到不了远方,心中也要有远方的模样。” 文章目录1. 01背包理论基础1.1什么是背包问题1.2二维dp数组01背包1.3一维dp数组(滚动数组)01背包2.leetcode 416.分割等和子集2.1 详细思路及思考难点2.2具体步骤及代码…

当食品制造业遇见数字化工具,如何借助S2B2C电商系统实现企业新增长

食品制造业是我国产业发展中的重要组成部分,具有点多、面广、投资小、见效快的特点,在经济发展中发挥着重要作用。根据工信部数据统计,从2018至2021年我国食品制造业经营规模稳步增长,2021年我国食品制造业营业收入达21268.1亿元&…

QT·移植Qt到ARM平台及搭建Qt交叉编译环境

目录 一、编译tslib库 二、移植 tslib 到文件系统 三、编译Qt源码(用于移植到ARM) 四、移植Qt到文件系统 五、搭建 Qt Creator 交叉编译环境 六、获得Qt可执行文件的另一种方法 要想在ARM平台上运行Qt程序,得满足以下两个点:1、…

【表达式求值】

目录:前言一、有效的括号(一)题目分析(二)整体代码二、表达式求值(一)题目分析1.栈的基本操作:2. 大体思路:3.具体计算过程:(二)整体代…

【代码随想录】二刷-哈希表

哈希表 《代码随想录》 哈希表一般用来快速查找某个元素是否在一个集合中。如果使用枚举的话时间复杂度为O(n),而使用哈希表只O(1)就可以做到。——元素查询。 242.有效的字母异位词 使用unordered_map // 时间复杂度 O(n) // 空间复杂度 O(n) class Solution { pub…

嵌入式分享合集94

一、单片机硬件电路设计 减少后级电源对前级的影响,防止电源正负接反烧坏后级电路,防止电源关电时电流倒灌,但经过二极管有0.4V左右压降,需要考虑经过0.4V降压后会不会低于后级电路的正常工作电压。 一、按键电路 R1上拉电阻&…

用C语言开发入门游戏FlappyBird

前言 《flappy bird》是一款由来自越南的独立游戏开发者Dong Nguyen所开发的作品,游戏于2013年5月24日上线,并在2014年2月突然暴红。2014年2月,《Flappy Bird》被开发者本人从苹果及谷歌应用商店撤下。2014年8月份正式回归APP Store&#xf…

java从零开始系统性学习完整笔记(一)

java从零开始系统性学习完整超全资源笔记(还在更新中) 前言 资源来自:王汉远java基础, B站视频: https://www.bilibili.com/video/BV1b4411g7bj/?spm_id_from333.1007.top_right_bar_window_custom_collection.content.click&a…

渗透测试之分享常用工具、插件和脚本(干货)

BRUP插件: 漏洞挖掘插件:Autorize、CSRF Token Tracker、XSS Validator、Turbo Intruder 辅助插件:HaE、sqlmap4brup、hackbar、Software Vulnerability Scanner 浏览器插件: wappalyzer、MySSL、Cookie Editor 脚本: …

Vue学习:vue生命周期

Vue实例有一个完整的生命周期,也就是从开始创建、初始化数据、编译模板、挂载Dom、渲染→更新→渲染、卸载等一系列过程,我们称这是Vue的生命周期。通俗说就是Vue实例从创建到销毁的过程,就是生命周期。生命周期又称为生命周期回调函数&#…

水果叠叠乐

水果叠叠乐 介绍 消消乐是一款益智类小游戏,最近比较火爆的一种是立体叠叠乐式的,然后小蓝也想开发一个自己练练手,给它起名叫“水果叠叠乐”。 准备 本题已经内置了初始代码,打开实验环境,目录结构如下&#xff1…