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

本文涉及的产品
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
简介: 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端口号
在这里插入图片描述
安装成功后就可以用命令行的方式进行登入,如下:
在这里插入图片描述

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
相关文章
|
5月前
|
Java 关系型数据库 数据库
Java 项目实战教程从基础到进阶实战案例分析详解
本文介绍了多个Java项目实战案例,涵盖企业级管理系统、电商平台、在线书店及新手小项目,结合Spring Boot、Spring Cloud、MyBatis等主流技术,通过实际应用场景帮助开发者掌握Java项目开发的核心技能,适合从基础到进阶的学习与实践。
788 3
|
3月前
|
存储 Linux 开发工具
Linux环境下使用Buildroot配置软件包
使用Buildroot可以大大简化嵌入式Linux系统的开发和维护工作,但它需要对Linux系统和交叉编译有深入的理解。通过上述步骤,可以有效地配置和定制软件包,为特定的嵌入式应用构建高效、稳定的系统。
399 11
|
4月前
|
安全 Java
Java之泛型使用教程
Java之泛型使用教程
334 10
|
5月前
|
存储 监控 Linux
Linux环境锁定关键文件防止误删操作流程。
总结以上内容,在Linux环境下锁定重要文档避免误删涉及到多种技术手段与策略组合运作, 包括但不限于利用chatter指挥官固化文档状态至只读模式、运作ACL精准调整访问权利列表、编排自动化流程简
203 20
|
3月前
|
Oracle Java 关系型数据库
Java 简单教程
Java是跨平台、面向对象的编程语言,广泛用于企业开发、Android应用等。本教程涵盖环境搭建、基础语法、流程控制、面向对象、集合与异常处理,助你快速入门并编写简单程序,为进一步深入学习打下坚实基础。
370 0
|
5月前
|
Linux
Linux环境下的UDEV机制及其与守护进程的关联
实际使用时管理员需要熟悉编写合适udev rules去满足特殊需求;同时也需要注意避免编写过度复杂导致无法预料结果rules.UDEVD虽然稳健但错误配置可能导致无法预料问题因此需谨慎处理相关配置工作.
205 16
|
5月前
|
存储 Linux
Linux环境下删除大文件后磁盘空间未释放问题诊断流程。
以上诊断流程涉及Linux底层机制与高级管理技能结合之处,并需要管理员根据实际环境灵活调整诊断策略与解决方案。
395 8
|
5月前
|
Ubuntu 安全 Linux
Ubuntu 24.10 发行版登场:Linux 6.11 内核、GNOME 47 桌面环境
Ubuntu 24.10 还带来了 GNOME 47,增强了性能和稳定性,并引入了新功能。此版本的 Ubuntu 还默认在采用 Nvidia 显卡的硬件上切换到 Wayland,并在支持的硬件上默认使用开源的 Nvidia 560 内核模块。 另外需要注意的是,Ubuntu 24.10 是稳定版本,但作为非 LTS 版本,仅支持 9 个月。
|
5月前
|
安全 Linux 网络安全
Linux系统初步设置本地Git环境和生成SSH密钥的步骤。
现在您的Linux系统已经配置好了Git环境,并创建并添加了SSH密钥,可以安全地与远端仓库进行交互,无论是克隆、推送还是拉取操作。此过程确保了数据传输的安全并使版本控制流程更为顺畅。使用Git时应考虑定期更新并管理您的凭据,以确保安全性。
666 0