Linux如何搭建Java部署环境

2023-05-16

Java具有着跨平台的特性,一次编写,到处运行,如:将Java程序部署到Linux上也可以运行,但是也是需要借助一些工具,如:JDK,MySql,Tomcat等

为什么是搭建Java部署环境,而不是开发环境?
答:因为Java几乎不会在Linux上直接开发代码,(Linux)上没有图形界面,无法运行想IDEA,Eclipse等开发工具,(同时Java语言脱离IDEA 等开发工具写起来也非常难受),C++ 可能会在Linux上搭建开发环境.

1. 认识yum

yum在Linux中更像是一个应用商店,但是必须联网才能操作
  • 在Linux下安装软件, 一个通常的办法是下载到程序的源代码, 并进行编译, 得到可执行程序.
  • 但是这样太麻烦了, 于是有些人把一些常用的软件提前编译好, 做成软件包(可以理解成windows上的安装
    程序)放在一个服务器上, 通过包管理器可以很方便的获取到这个编译好的软件包, 直接进行安装.
  • 软件包和软件包管理器, 就好比 “App” 和 “应用商店” 这样的关系.
  • yum(Yellow dog Updater, Modified)是Linux下非常常用的一种包管理器. 主要应用在Fedora, RedHat,Centos等发行版上

yum 起到的功能和 Maven 的依赖管理功能类似. 使用 Maven 能帮我们方便的安装一些第三方 jar 包, 而 yum 方便我们方便的安装第三方程序

1.1 查看应用商店(yum)有哪些程序可以安装

yum list    表示查看yum中的所有程序,但是应用商店东西太多,直接查看所有的程序,每次搜索时间太长
yum list | grep + 关键词   表示搜索包含关键词的软件包列出来

1.2如何安装和卸载软件包(需要管理员权限)

yum install + 软件包名字  表示安装软件包
yum remove + 软件包名字  表示卸载软件包

2.安装JDK

2.1从Linux上直接下载安装JDK

输入yum install | grep jdk -> 找到对应的版本 -> 输入yum intsall + 对应jdk软件包进行下载 -> 分别输入java和javac进行验证

在这里插入图片描述
注意:这里的openjdk和我们之前用到的JDK不是同一个,Linux上下载的jdk是开源实现的,而我们之前用到的是Oracle官方的JDK(闭源)

2.2从Orlcle上面下载JDK进行安装

[Oracle官网下载JDK](https://java.com/zh-CN/download/linux_manual.jsp)

在这里插入图片描述
然后鼠标右键复制上图中红色的圈圈的链接地址,然后再Linux上输入 :wget+链接地址
然后就可以从官网上下载JDK
在这里插入图片描述

3.Tomcat的下载

首先查找要下载的版本,输入:yum list | grep tomcat 注:因为本人用的是tomcat的版本是8+,Tomcat的版本和Servlet的版本要是一一对应的,所以是从官网上下载的

在这里插入图片描述
注意:上面的tomcat.noarch 中的 noarch表示和CPU框架无关,因为Tomcat是运行在JVM上的程序

3.1 如何从网上下载安装Tomcat

首先在官网上找到对应版本的Tomcat,然后同样在压缩包的地方,右键赋值其链接地址,
  1. 在Linux输入:wget + 链接地址(这个地址就是你复制的地址)下载tomcat对应的压缩包

  2. 然后输入:unzip + 【对应的tomcat版本】 进行解压操作
    注意:可能会出现找不到unzip命令,那么就需要使用yum操作下载unzip指令

  3. 启动tomcat,但是在启动之前首先要打开“.sh”的文件,也就是加上可执行文件

  • 3.1 首先输入chmod +x *.sh 将所有.sh文件授权
  • 3.2 输入 ./startup.sh 或者 sh startup.sh 来启动tomcat

3.2如何验证Tomcat是否启动成功?

方法一:查看Tomcat的进程是否存在(java进程) 输入:ps aux | grep tomcat 当出现如下样式,表示启动成功

在这里插入图片描述

注意:ps aux 指令可以查看当前主机上的所有进程,后面可以跟上grep进行筛选

方法二:查看端口号是否开启,8080/8005,如果看到这俩端口你被占用,才是正确的效果
输入命令:netstat -anp | grep 8080

在这里插入图片描述

netstat -anp 可以查看网络信息,尤其是能够查看到端口的使用情况

方法三:使用浏览器直接访问Tomcat
地址(你的Linux的ip)+8080端口,如果出现tomcat官网,则表示启动成功

端口号被占用怎么办?

因为一个端口号不能同时被多个进程绑定,如果当前端口被占用,那么可以干掉当前端口号

  1. 首先输入 netstat -anp | grep+被占用的端口 来查找当前被占用端口的id
  2. 然后输入 kill+被占用端口的id 就可以用干掉当前端口

4.MySQL的安装

MySQL同样也使用yum安装,但是需要修改一些配置,稍微复杂一些

4.1通过yum安装MariaDB

**以下操作都以 root 用户进行操作**
  1. 安装 mariadb 服务
yum install -y mariadb-server
  1. 安装 mariadb 命令行客户端
yum install -y mariadb
  1. 安装 mariadb C library
yum install -y mariadb-libs
  1. 安装 mariadb 开发包
yum install -y mariadb-devel

4.2更改配置

  1. 更改 /etc/my.cnf.d/client.cnf 文件
    [client] 下加一行配置 default-character-set=utf8
    输入:vim /etc/my.cnf.d/client.cnf
    进入到此文件件的内容里面,然后按下 i 进行编辑,当编辑完成之后 先按下Esc ,然后再输入 :wq 完成退出(以下更改内容相同,反复即可)
    修改完成之后的内容为:
    在这里插入图片描述

  2. 更改 /etc/my.cnf.d/mysql-clients.cnf 文件

[mysql] 下加一行配置 default-character-set=utf8

修改完成之后的内容为:
在这里插入图片描述

  1. 更改 /etc/my.cnf.d/server.cnf 配置

[mysqld] 下加配置

collation-server = utf8_general_ci

init-connect=‘SET NAMES utf8’

character-set-server = utf8

sql-mode = TRADITIONAL

修改完成之后的内容为:
在这里插入图片描述

4.3启动

  1. 启动服务
systemctl start mariadb
  1. 设置服务开启自启动
systemctl enable mariadb
  1. 查看服务状态,
systemctl status mariadb

可能的输出为,注意到 Active 状态为 active (running)
在这里插入图片描述

  1. 测试链接
    使用命令行客户端尝试连接
mysql -uroot

在这里插入图片描述

  1. 查看mariadb 版本号
select version();

在这里插入图片描述

  1. 查看字符集配置
show variables like '%char%';

在这里插入图片描述

  1. 目前我们的 mariadb 用户是没有密码的,是非常不安全的,需要执行以下步骤
mysql_secure_installation

选择 Y/N 的时候都选 Y,

New password:

Re-enter new password:

时设置你自己的 root 密码

使用命令行客户端尝试连接(带密码)

mysql -uroot -p

随后输入你刚才设置的密码,可能的输出为
在这里插入图片描述

5.安装git

5.1查看git安装包

# 由于带 git 关键字的软件包很多, 可以在 grep 的时候加上 -w , 表示全字匹配. 
yum list | grep git -w

5.2安装git

yum install git.x86_64

5.3 git的基本使用

  • git clone
  • git add
  • git commit
  • git push

6.安装Maven

6.1查看Maven安装包

yum list | grep maven -w

6.2安装Maven

yum install maven.noarch

6.3验证Maven

mvn -v

在这里插入图片描述

小节:

  • yum 是 Linux 中的一种包管理器. 帮助我们方便的安装管理程序.

  • find 查找文件所在目录. 示例 find [路径] -name [关键字]

  • grep 查看某个字符串在哪些文件中包含 grep [关键字] [文件]

  • ps 查看进程. 示例 ps aux | grep xxx

  • netstat 查看网络状态. 示例 netstat -anp | grep xxx

  • curl 是一个命令行的 http 客户端程序

  • wget 也是一个命令行的 http 客户端程序

    • 是一个特殊的符号, 称为 通配符 , 可以用来替代任何其他字符
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux如何搭建Java部署环境 的相关文章

  • VSCode主题设置和常用快捷键

    主题设置 点击菜单栏的 Code 首选项 设置 xff0c 然后在左边找到 工作台 外观 xff0c 在 Color Theme 选项下可以设置主题 xff0c 下面以 Default Dark 43 主题为例 xff0c 讲解如何在这个主
  • 网络爬虫详细设计方案

    目录 网络爬虫设计方案 1 网络爬虫简介 2 Java爬虫的开发和使用流程 2 1 下载 2 2 分析 3 单点登陆与Jsoup解析 3 1 单点登陆简介 3 1 1 登陆 3 1 2 注销 3 2 Jsoup网页解析 4 网络爬虫详细设计
  • Android之资源限制ulimit

    Android之资源限制ulimit https notes z dd net 2020 09 06 Android E4 B9 8B E8 B5 84 E6 BA 90 E9 99 90 E5 88 B6ulimit
  • 技术人成长中的得与失,想当程序员或者已经是程序员的要注意了!

    每个人在成长过程中 xff0c 都免不了在得失中摇晃 xff0c 对我来说 xff0c 将来如何更好地去平衡得失 xff0c 是需要思考的问题 xff0c 而对新入行的年轻人来说 xff0c 能从我这些总结中获得一点点启发 xff0c 那我
  • stm32 代码RAM溢出

    KEIL编译程序后报下边错误 xff1a 原因是因为代码的全局变量太多或全局的数组太大导致程序编译后RAM溢出 xff0c 建议先查看有没有比较大的全局数组 BootLoader BootLoader axf Error L6406E No
  • 【测试沉思录】6. 设计一款简单的接口自动化测试框架

    欢迎订阅我的新专栏 现代命令行工具指南 xff0c 精讲目前最流行的开源命令行工具 xff0c 大大提升你的工作效率 作者 xff1a 周栒 编辑 xff1a 毕小烦 接口自动化测试是质量保障体系中非常重要的一环 xff0c 业内也有很多的
  • 【测试沉思录】7. 测试左移的一点思考

    欢迎订阅我的新专栏 现代命令行工具指南 xff0c 精讲目前最流行的开源命令行工具 xff0c 大大提升你的工作效率 作者 xff1a 王媛媛 编辑 xff1a 毕小烦 万物皆有生命周期 xff0c 软件工程也一样 软件生命周期 xff08
  • 【测试沉思录】8. 测试计划应该怎么做?

    欢迎订阅我的新专栏 现代命令行工具指南 xff0c 精讲目前最流行的开源命令行工具 xff0c 大大提升你的工作效率 作者 xff1a 闫嘉欣 编辑 xff1a 毕小烦 敏捷项目的特点是需求变化快 项目周期短 传统的极致详尽的测试计划已经不
  • 【测试沉思录】9. 数据工厂低代码平台探索与实践

    欢迎订阅我的新专栏 现代命令行工具指南 xff0c 精讲目前最流行的开源命令行工具 xff0c 大大提升你的工作效率 作者 xff1a 吴锺瑞 刘洪初 编辑 xff1a 毕小烦 一 需求背景 造数据可能是日常迭代中最频繁也是最耗时的工作 我
  • 【测试沉思录】10. 我们用到的3种Mock测试方案

    欢迎订阅我的新专栏 现代命令行工具指南 xff0c 精讲目前最流行的开源命令行工具 xff0c 大大提升你的工作效率 作者 xff1a 王媛媛 编辑 xff1a 毕小烦 Mock 这个词对于测试人员来说并不陌生 xff0c 当我们要测试的接
  • 【测试沉思录】11. 如何进行基准测试?

    欢迎订阅我的新专栏 现代命令行工具指南 xff0c 精讲目前最流行的开源命令行工具 xff0c 大大提升你的工作效率 作者 xff1a 刘洪初 编辑 xff1a 毕小烦 基准测试 xff08 benchmarking xff09 其实就是一
  • 【测试沉思录】12. 可用性保障平台的自动化测试探索与实践

    欢迎订阅我的新专栏 现代命令行工具指南 xff0c 精讲目前最流行的开源命令行工具 xff0c 大大提升你的工作效率 作者 xff1a 张雅瑜 编辑 xff1a 毕小烦 一 背景 随着业务的发展 xff0c 应用越来越多 xff0c 并且承
  • 【测试沉思录】13. 玩转 Dubbo 接口测试的 3 种姿势

    欢迎订阅我的新专栏 现代命令行工具指南 xff0c 精讲目前最流行的开源命令行工具 xff0c 大大提升你的工作效率 作者 xff1a 王伟 编辑 xff1a 毕小烦 微服务盛行的今天 xff0c 保障服务质量至关重要 xff0c 作为测试
  • 【测试沉思录】14. 性能测试中的系统资源分析之一:CPU

    作者 xff1a 马海琴 编辑 xff1a 毕小烦 在日常的性能测试中 xff0c 我们除了关注应用本身的性能 xff0c 比如服务的响应时间 TPS 等 xff0c 也需要关注服务器本身的资源使用情况 xff0c 比如 CPU 内存 磁盘
  • Java 多线程编程 实验题

    Java 多线程编程 实验二 1 创建键盘操作练习2 双线程猜数字3 月亮围绕地球 1 创建键盘操作练习 题目描述 xff1a 编写一个Java应用程序 xff0c 在主线程中再创建两个线程 xff0c 一个线程负责给出键盘上字母键上的字母
  • 【测试沉思录】15. 性能测试中的系统资源分析之二:内存

    作者 xff1a 马海琴 编辑 xff1a 毕小烦 二 内存 内存又称主存 xff0c 是 CPU 能直接寻址的存储空间 xff08 由半导体器件制成 xff09 内存的特点是存取速率快 xff0c 断电一般不保存数据 xff08 非持久化
  • 【测试沉思录】16. 性能测试中的系统资源分析之三:磁盘

    作者 xff1a 马海琴 编辑 xff1a 毕小烦 三 磁盘 磁盘是可以持久化存储的设备 xff0c 根据存储介质的不同 xff0c 常见磁盘可以分为两类 xff1a 机械磁盘和固态磁盘 磁盘就像人的大脑皮层 xff0c 负责数据的储存 记
  • 【测试沉思录】17. 性能测试中的系统资源分析之四:网络

    作者 xff1a 马海琴 编辑 xff1a 毕小烦 计算机网络 xff0c 就是通过光缆 电缆 电话线或无线通讯将两台以上的计算机互连起来的集合 xff0c 包括广域网 城域网 局域网和无线网 计算机网络是传输信息的媒介 我们常说的千兆网
  • 【测试沉思录】18.如何测试微信小程序?

    作者 xff1a 雷远缘 编辑 xff1a 毕小烦 一 先知道小程序是什么 啥是小程序 xff1f 小程序是一种不需要下载安装即可使用的应用 xff0c 它实现了应用 触手可及 的梦想 xff0c 用户扫一扫或者搜一下即可打开应用 也体现了
  • 【测试沉思录】19. 如何设置 JMeter 线程组?

    作者 xff1a 宋赟 编辑 xff1a 毕小烦 最近有不少测试同学问我 JMeter 线程组如何设置并发的问题 xff0c 发现很多人对线程组里的参数不是很清楚 xff0c 今天就科普一下 JMeter 线程组的信息 xff0c 也简单介

随机推荐

  • 【测试沉思录】20. 如何做好测试需求分析?

    作者 xff1a 刘亚茹 编辑 xff1a 毕小烦 我们都知道测试用例是软件测试中保障质量的必要手段 xff0c 而测试需求作为用例编写的主要依据却往往被很多人忽视 到底什么是测试需求 xff1f 又如何做好测试需求分析呢 xff1f 本文
  • 【测试沉思录】21. 如何用 JMeter 编写性能测试脚本?

    作者 xff1a 宋赟 编辑 xff1a 毕小烦 Apache JMeter 应该是应用最广泛的性能测试工具 怎么用 JMeter 编写性能测试脚本 xff1f 1 编写 HTTP 性能测试脚本 STEP 1 添加 HTTP 请求 STEP
  • 【测试沉思录】21. 如何用 JMeter 编写性能测试脚本?

    作者 xff1a 宋赟 编辑 xff1a 毕小烦 Apache JMeter 应该是应用最广泛的性能测试工具 怎么用 JMeter 编写性能测试脚本 xff1f 1 编写 HTTP 性能测试脚本 STEP 1 添加 HTTP 请求 STEP
  • 【测试沉思录】22. 前端性能测试怎么做?

    作者 xff1a 张丹青 编辑 xff1a 毕小烦 普通用户如何评价一个网站的体验好不好呢 xff1f 除了满足他的功能需求以外 xff0c 用得爽不爽可能是最大的评估因素 这个爽不爽可以简单理解为快不快 xff0c 好不好看 xff0c
  • 【测试沉思录】23. 如何实现基于场景的接口自动化测试用例?

    作者 xff1a 陈爱娇 编辑 xff1a 毕小烦 自动化本身是为了提高工作效率 xff0c 不论选择何种框架 xff0c 何种开发语言 xff0c 我们最终想实现的效果 xff0c 就是让大家用最少的代码 xff0c 最小的投入 xff0
  • 搭建linux服务器详细教程

    Linux服务器的部署 xff0c 配置 xff0c 搭建步骤 xff1a 1 准备 xff1a 1 1 jdk1 8 xff1a jdk 8u11 linux x64 tar gz tomcat xff1a apache tomcat 8
  • 使用Word2013写论文的时候,波浪号(~)一直在一行的上面,无法上下居中 的解决方案

    这里提供四种方法给大家 xff0c 不用谢 xff01 1 搜狗输入法 xff0c 直接打 blh xff0c 即可获得波浪号 xff08 这个方法大多数地方都可以用 xff0c 比如打摄氏度符号 xff08 xff09 的时候 xff09
  • centos7.4安装图形界面并远程桌面连接

    1 系统版本 CentOS release 6 2 Final 以下安装需要用root权限操作 2 安装x windows yum groupinstall y X Window System 注意有引号 3 安装图形界面软件 GNOME
  • linux服务器更改网络配置

    文章目录 前言一 更改vmware的虚拟网络配置二 修改window的网络配置三 修改虚拟机内部的配置四 映射 选做 修改hostname修改hosts修改windows的配置验证 前言 linux服务器更改网络配置 xff0c 是为让它的
  • FastBoot 刷机教程

    本篇文章主要介绍 Android 开发中的 FastBoot 部分知识点 xff0c 通过阅读本篇文章 xff0c 您将收获以下内容 一 Fastboot 简介 欢迎关注微信公众号 程序员Android 微信公众号 xff1a Progra
  • Google GMS Crash 优化方案

    极力推荐文章 xff1a 欢迎收藏 Android 干货分享 阅读五分钟 xff0c 每日十点 xff0c 和您一起终身学习 xff0c 这里是程序员Android GMS GoogleMobile Service 包是出口国外手机中 Go
  • FastBoot 刷机使用方法

    和你一起终身学习 xff0c 这里是程序员Android 经典好文推荐 xff0c 通过阅读本文 xff0c 您将收获以下知识点 一 Fastboot 简介 二 Fastboot 刷机准备 三 Fastboot 刷机命令 四 其他刷机工具
  • Android 系统奔溃触发WatchDog分析

    和你一起终身学习 xff0c 这里是程序员Android 经典好文推荐 xff0c 通过阅读本文 xff0c 您将收获以下知识点 一 前言 二 场景介绍 三 分析trace文件 一 前言 作为一个Android开发者 xff0c 不管是Ap
  • Android 人脸解锁源码剖析

    和你一起终身学习 xff0c 这里是程序员Android 经典好文推荐 xff0c 通过阅读本文 xff0c 您将收获以下知识点 一 人脸识别身份验证HIDL 二 人脸模块流程分析 三 人脸录入 四 人脸匹配 五 人脸解锁屏幕 一 人脸识别
  • Android 手机按键客制化详解

    在Android 中会有以下5个按键 xff08 Back Home Menu Power Volume xff09 与用户进行交互 xff0c Framework 层中实现按键功能 xff0c 因此 xff0c 从手机系统定制的角度 xf
  • 基python实现多线程网页爬虫

    一般来说 xff0c 使用线程有两种模式 一种是创建线程要执行的函数 把这个函数传递进Thread对象里 xff0c 让它来执行 另一种是直接从Thread继承 xff0c 创建一个新的class xff0c 把线程执行的代码放到这个新的c
  • 手机重启问题 Log 抓取方法

    极力推荐文章 xff1a 欢迎收藏 Android 干货分享 本篇文章主要介绍展讯平台手机开发中的部分重启问题知识点 xff0c 通过阅读本篇文章 xff0c 您将收获以下内容 一 User 版本 默认开启 sysdump 方法 二 插入S
  • CentOS7下普通账号通过systemctl管理服务需要输入root密码

    问题描述 xff1a 使用普通账号test通过systemctl启动系统服务提示需要输入root密码 xff1a 解决方案 xff1a 根据上面提示得知权限由polkit进行管理 xff0c 对应的是org freedesktop syst
  • VNC的安装使用和分辨率设置

    1 使用yum命令安装VNC server xff1a yum y install tigervnc server 若为离线环境则安装rpm包 rpm ivh tigervnc server 1 8 0 17 el7 x86 64 rpm
  • Linux如何搭建Java部署环境

    Java具有着跨平台的特性 xff0c 一次编写 xff0c 到处运行 xff0c 如 xff1a 将Java程序部署到Linux上也可以运行 xff0c 但是也是需要借助一些工具 xff0c 如 xff1a JDK xff0c MySql