Linux如何搭建Java部署环境

Posted 你这家伙

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux如何搭建Java部署环境相关的知识,希望对你有一定的参考价值。

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 客户端程序

    • 是一个特殊的符号, 称为 通配符 , 可以用来替代任何其他字符

以上是关于Linux如何搭建Java部署环境的主要内容,如果未能解决你的问题,请参考以下文章

Linux 服务器 Java环境部署系列:搭建RabbitMQ

环境搭建:linux下tomcat接口测试环境部署

Linux搭建环境+部署项目

如何把java程序部署到linux系统下

Linux环境搭建基础

Java部署环境搭建(Linux)