Linux centos7.0搭建Java开发环境(保姆级教程)

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: Linux centos7.0搭建Java开发环境(保姆级教程),包括JDK,Tomact,mysql的安装与部署和jar与war二种方式的项目创建与部署。

个人推荐:

📢📢📢 前些天发现了一个蛮有意思的人工智能学习网站,8个字形容一下 "通俗易懂,风趣幽默",感觉非常有意思,忍不住分享一下给大家。 点击跳转到教程

在这里插入图片描述

1.JDK的安装与配置

(1) 检测当前系统是否安装JDK

  • 使用 java -version 查看当前系统是否安装JDK(如下信息表示未安装)

在这里插入图片描述

注意:有的系统会默认安装OpenJDK,所以如果已经默认安装OpenJDK需要卸载:

出现如下信息表示系统默认安装了openJDK:

1 [root@localhost ~]# java -version
2 openjdk version "1.8.0_242"
3 OpenJDK Runtime Environment (build 1.8.0_242-b08)
4 OpenJDK 64-Bit Server VM (build 25.242-b08, mixed mode)

卸载步骤如下:
使用 rpm -qa | grep java 命令查看安装包文件,执行结果类似如下( 安装包文件名为:java-1.8.0-openjdk-headless-1.8.0.242.b08-1.el7.x86_64 ):

1 [root@localhost ~]# rpm -aq | grep java
2 java-1.8.0-openjdk-headless-1.8.0.242.b08-1.el7.x86_64
3 python-javapackages-3.4.1-11.el7.noarch
4 tzdata-java-2019c-1.el7.noarch
5 javapackages-tools-3.4.1-11.el7.noarch
6 java-1.8.0-openjdk-1.8.0.242.b08-1.el7.x86_64

使用 rpm -e –nodeps 安装文件名 进行卸载类似如下:

rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.242.b08-1.el7.x86_64

再次使用 java -version 命令查看

出现bash: java: 未找到命令...表示卸载成功。

(2) 下载JDK

安装JDK(有二种方式手动安装和yum安装,这里采用手动安装)。
  • 首先先下载JDK安装包(Linux版本):

百度网盘方式下载:https://pan.baidu.com/s/1eirKsLe1edrW2Mn55lwvyA 提取码:2h6v

在这里插入图片描述

Oracle官方下载方式:
使用 uname -a 命令查找Linux内核:
在这里插入图片描述
进入Oracle官网:https://www.oracle.com/java/technologies/downloads/下载对应版本的rpm包
在这里插入图片描述
备注:下载需要登入Oracle,如果没有账号需要注册Oracle。

(3) 将文件上传到远程服务器中

这里我使用Xshell7的XFTP上传文件到远程服务器中。

使用 cd /usr/local 命令进入到local路径下:

在这里插入图片描述
使用 mkdir Java 命令创建Java目录,并进入到该目录下:

在这里插入图片描述
使用Xshell7上传文件:
在这里插入图片描述
上传文件:
在这里插入图片描述
使用 ls 命令显示当前目录下的文件:
在这里插入图片描述

(4) 安装JDK

  • 使用 rpm -ivh jdk-8u221-linux-x64.rpm 命令安装JDK

在这里插入图片描述

(5) 配置环境变量

  • 使用 vim /etc/profile 命令编辑配置文件

在这里插入图片描述
键盘按下Insert键进入插入模式
在这里插入图片描述
键盘按↓键,到文件最后一行,插入配置信息
在这里插入图片描述
配置信息如下:

JAVA_HOME=/usr/java/jdk1.8.0_221-amd64 
CLASSPATH=%JAVA_HOME%/lib:%JAVA_HOME%/jre/lib
PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin export PATH CLASSPATH JAVA_HOME

在这里插入图片描述
键盘按ESC键进入底行模式,然后输入 :wq! 回车
在这里插入图片描述

  • 让配置生效

输入 source /etc/profile 命令即可:

在这里插入图片描述
使用 java -version 命令查看一下,JDK安装成功!
在这里插入图片描述

2.安装Tomcat9

(1) 下载Tomcat9的安装包

百度网盘方式下载:https://pan.baidu.com/s/1eirKsLe1edrW2Mn55lwvyA 提取码:2h6v
在这里插入图片描述
Apche官方下载地址:https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.34/bin/
在这里插入图片描述

(2) 将安装包上传到远程服务器

在/usr/local目录下创建tomcat文件夹,并进入到tomcat文件夹下
在这里插入图片描述
上传tomcat的安装包到tomcat目录下:
在这里插入图片描述
使用 ls 命令查看
在这里插入图片描述

(3) Tomcat的安装与启动

  • 使用 tar -zxvf apache-tomcat-9.0.34.tar.gz 命令解压

在这里插入图片描述
进入到/usr/local/tomcat/apache-tomcat-9.0.34/bin 目录下( startup.sh 为Tomcat的启动Shell脚本,执行Tomcat将启动):
在这里插入图片描述
( shutdown.sh 为Tomcat的关闭Shell脚本,执行Tomcat将关闭):
在这里插入图片描述

进入到/usr/local/tomcat/apache-tomcat-9.0.34/conf 这个目录下是有关Tomcat的所有配置信息,配置信息详细情况可以查看这篇博文进行学习:https://blog.csdn.net/xinshuzhan/article/details/107725450
在这里插入图片描述
使用 vim server.xml 命名编辑server.xml配置文件( server.xml关于Tomcat的配置)
在这里插入图片描述
修改Tomcat的端口为8959( 根据自己的需求进行修改 )
在这里插入图片描述

  • 让防火墙对8959端口进行放行:

如果安装了宝塔Linux面板,直接在安全中进行放行即可
在这里插入图片描述

如果没有可以通过Linux命令进行放行:
使用 iptables-save 命令查看暴露的端口号:
在这里插入图片描述
发现8959并没有放行(暴露)
在这里插入图片描述
通过 firewall-cmd --permanent --add-port=8959/tcp 命令开放端口,然后再通过 sudo firewall-cmd --reload 命名重新加载配置,此时8959端口已经开启
在这里插入图片描述
重新使用 iptables-save 命令查看暴露的端口号:
在这里插入图片描述

  • 启动Tomcat服务器

进入到/usr/local/tomcat/apache-tomcat-9.0.34/bin 目录下,然后通过 ./startup.sh 命令启动Tomcatl服务器。

在这里插入图片描述

  • 关闭Tomcat服务器

在/usr/local/tomcat/apache-tomcat-9.0.34/bin 目录下,通过 ./shutdown.sh 命令关闭Tomcat
在这里插入图片描述

3.运行war包项目

(1) 创建一个JavaEnterprise工程

在这里插入图片描述
修改一下index.jsp文件里面的内容:
在这里插入图片描述
设置Tomact的Application context为hellowar
在这里插入图片描述
maven打包方式为war包:
在这里插入图片描述

maven进行打包:
在这里插入图片描述

(2) 将生成的war包上传到远程服务器Tomcat中的webapp文件中

在这里插入图片描述
修改一下war包的文件名,修改为hellowar.war再进行上传
在这里插入图片描述

进入到/usr/local/tomcat/apache-tomcat-9.0.34/webapps目录下,使用Xshell7的Xftp进行上传

在这里插入图片描述
在这里插入图片描述

上传成功,使用 ls 命令查看一下:
在这里插入图片描述

  • 启动Tomat:

在这里插入图片描述
tomcat启动后war文件会自动被解压
在这里插入图片描述

(3) 端口放行

前面其实已经对Tomcat的端口进行了放行,试了好久一直不行,最后在腾讯云服务器控制台中放行了tomcat端口就可以了。
在这里插入图片描述

腾讯云服务器控制台中的防火墙处,放行tomcat的端口
在这里插入图片描述

在这里插入图片描述

4.运行jar包项目

Jar包方式不需要提供Tomcat,就可以直接通过Java -jar xxx.jar 命名进行启动,因为内部已经内置了一个Tomcat服务器(默认情况下),根据项目的说明可以参照这篇博文: Spring Boot为什么不需要额外安装Tomcat?

(1) 本地部署与运行

创建一个不带模板的Maven项目,项目名为hellojar
在这里插入图片描述

在这里插入图片描述
最后项目结构如下:
在这里插入图片描述

在pom.xml中导入SpringBoot相关依赖:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.4.5</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <groupId>com.dudu</groupId>
    <artifactId>hellojar</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>jar</packaging>

    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
    </properties>


    <dependencies>
        <!--SpringBoot框架-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <scope>compile</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>2.4.5</version>
            </plugin>
        </plugins>
    </build>
</project>

在resouces中创建配置文件,application.yaml如下:
在这里插入图片描述

编写项目启动类HelloJarApplication和HelloController控制类:

HelloJarApplication启动类代码如下:

package com.dudu;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.ServletComponentScan;

@SpringBootApplication
@ServletComponentScan
public class HelloJarApplication {
    public static void main(String[] args) {
        SpringApplication.run(HelloJarApplication.class);
    }
}

HelloController控制类代码如下:

package com.dudu.controller;


import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class HelloController {

    @RequestMapping("/helloJar")
    public String sayHello() {
        return "hello,Jar包方式进行部署";
    }
}

maven打包:

在这里插入图片描述
打包完成后,会在target目录下生成相应的jar包文件
在这里插入图片描述

通过HelloJarApplication启动类进行启动:
在这里插入图片描述

游览器输入http://localhost:8959/helloJar 进行访问:
在这里插入图片描述

其实我们可以直接通过生成的jar进行启动,操作如下:
在jar所在目录,执行 java -jar hellojar-1.0-SNAPSHOT.jar 命令进行启动
在这里插入图片描述
再次访问效果一致
在这里插入图片描述

(2) 远程部署与运行

本地测试完毕,接下来我们只需要将生成的jar文件上传到我们的公网服务器上,然后执行 java -jar hellojar-1.0-SNAPSHOT.jar 命令就可以进行启动了:

上传文件成功:
在这里插入图片描述
由于8959的端口号已经给Tomcat了,需要将Tomcat停止,这里我通过kill进程的方式进行关闭:
在这里插入图片描述

最后通过 java -jar hellojar-1.0-SNAPSHOT.jar 命令进行启动,项目启动成功:
在这里插入图片描述
个人电脑访问http://公网Ip地址:8959/helloJar 访问成功:
在这里插入图片描述

5.安装Mysql

软件的安装非常的麻烦,其实我们可以通过一些软件,网站一键安装,这里使用宝塔面板来安装Mysql

(1) 宝塔面板的安装

你可以通过这篇博文学习怎么安装Linux centOs7.0安装宝塔面板(保姆级教程)

(2) 宝塔面板安装mysql

软件商店-->搜索mysql-->选择要安装的软件
在这里插入图片描述
这里我选择编译安装->提交-->等待软件安装完成
在这里插入图片描述
软件安装完成后,可以通过选择数据库-->点击root密码-->获取安装mysql的root的密码
在这里插入图片描述
并且还可以修改密码
在这里插入图片描述
放行3306端口号
在这里插入图片描述
安装成功后就可以用命令行的方式进行登入,如下:
在这里插入图片描述

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
17天前
|
Linux
linux下搭建tftp服务器教程
在Linux中搭建TFTP服务器,需安装`tftp-server`(如`tftpd-hpa`)。步骤包括:更新软件包列表,安装`tftpd-hpa`,启动并设置开机自启,配置服务器(编辑`/etc/default/tftpd-hpa`),添加选项,然后重启服务。完成后,可用`tftp`命令进行文件传输。例如,从IP`192.168.1.100`下载`file.txt`: ``` tftp 192.168.1.100 &lt;&lt;EOF binary put file.txt quit EOF ```
28 4
|
22天前
|
Linux
Linux中centos桌面消失网络图标
Linux中centos桌面消失网络图标
13 0
|
1月前
|
网络协议 Shell Linux
【Shell 命令集合 网络通讯 】Linux 设置和配置PPP pppsetup命令 使用教程
【Shell 命令集合 网络通讯 】Linux 设置和配置PPP pppsetup命令 使用教程
39 0
|
1月前
|
网络协议 Shell Linux
【Shell 命令集合 网络通讯 】Linux 创建网络连接 nc命令 使用教程
【Shell 命令集合 网络通讯 】Linux 创建网络连接 nc命令 使用教程
37 1
|
14天前
|
关系型数据库 MySQL Linux
linux CentOS 7.4下 mysql5.7.20 密码改简单的方法
linux CentOS 7.4下 mysql5.7.20 密码改简单的方法
17 0
|
14天前
|
缓存 Linux
linux centos7 挂载本地iso yum源
linux centos7 挂载本地iso yum源
64 0
|
27天前
|
消息中间件 Linux 开发工具
Linux系统安装RabbitMQ详细教程
Linux系统安装RabbitMQ详细教程
18 0
|
27天前
|
NoSQL 数据可视化 Linux
linux-安装mongdb(centos7.5)
linux-安装mongdb(centos7.5)
14 0
|
1月前
|
存储 Shell Linux
【Shell 命令集合 网络通讯 】⭐Linux 显示当前系统的主机名和操作系统类型 uuname命令 使用教程
【Shell 命令集合 网络通讯 】⭐Linux 显示当前系统的主机名和操作系统类型 uuname命令 使用教程
29 0
|
1月前
|
Shell Linux C语言
【Shell 命令集合 网络通讯 】Linux 验证Samba配置文件 testparm命令 使用教程
【Shell 命令集合 网络通讯 】Linux 验证Samba配置文件 testparm命令 使用教程
35 0