开发环境搭建

简介: 工欲善其事,必先利其器。学习前请确保电脑内存16G以上(建议32G),安装VMware及CentOS7虚拟机,配置网络与IP,远程连接使用FinalShell。苹果用户需安装Docker并部署MySQL8。下载课程资料、Maven仓库及虚拟机镜像,导入后设置IDEA开发环境,配置JDK11、自动导包与编码。通过Git Fork项目至个人仓库并克隆到本地,完成环境搭建。

工欲善其事必先利其器。

个人电脑内存至少16G以上(为了更好的学习最好升级到32G)不符合条件的同学趁休息日升级电脑。

有条件的购买便携显示器进行分屏开发,开发效率杠杠滴,这是专业程序员的标配。

从下边的地址下载全部资料,按照本文档要求安装配置虚拟机及开发环境。

线下同学,直接硬盘拷贝即可

虚拟机:链接:https://pan.baidu.com/s/1VOWFqY7LucKgDu1yA_xM_Q?pwd=1234

课程资料:链接:https://pan.baidu.com/s/1htUlv6xpORT-n7JB351GnA?pwd=1234

maven仓库:链接:https://pan.baidu.com/s/1wqrnwApF_c99huvWcoZhCA?pwd=1234

1 导入虚拟机

黑马商成项目中用到的一些服务端软件如:Nacos配置中心、Redis、RabbitMQ消息队列等通常会安装在企业局域网的服务器中,开发人员去远程连接它们。在教学中我们在自己的电脑上安装虚拟机,虚拟机代表了企业局域网中的服务器。

服务器操作系统使用Centos7,导入下发的虚拟机文件,也可以自行安装Centos7虚拟机。

1.1 导入虚拟机

首先安装VMware-workstation 16.x 或 VMware-workstation 17.x 虚拟机软件(已安装vmware软件的同学不需要重新安装),可从课程资料“软件工具”目录获取安装程序(VMwareworkstation16.rar)。

1)设置网络

点击 “编辑--》虚拟网络编辑器”配置网络地址,地址须与下图一致。

设置子网IP:192.168.101.0,子网掩码:255.255.255.0。

2)导入虚拟机

解压老师提供的虚拟机文件,进入解压后的文件架,双击"CentOS 7 64 位.vmx" 文件,选择复制虚拟机。

对此虚拟机的设置建议至少8G内存、8核CPU,硬盘存储至少40G。

设置完成,启动虚拟机。

注意:虚拟机的IP地址为192.168.101.68,不用修改IP地址。

虚拟机启动成功如下界面:

账号:root

密码:centos

1.1.1 可能遇到的问题

win11打开.vmx文件报错:“未能启动虚拟机”

尝试解决方法:

  1. 打开虚拟机的存放路径
  2. 找到.vmx的配置文件
  3. 修改 virtualHW.version改为virtualHW.version = "18"

1.2 苹果电脑用户

使用苹果电脑的学生需要自行安装docker并安装MySQL8,已安装MySQL8的不必重新安装。

1.2.1 安装MySQL

拉取镜像:

docker pull mysql:8.0.26

创建以下目录:

sudo mkdir -p /usr/mysql/conf /usr/mysql/data /var/log/mysql

sudo chmod -R 777 /usr/mysql/ /var/log/mysql

创建配置文件

vim /usr/mysql/conf/my.cnf

添加以下内容到上述创建的配置文件中

[client]
#socket = /usr/mysql/mysqld.sock
default-character-set = utf8mb4
 
[mysqld]
#pid-file        = /var/run/mysqld/mysqld.pid
#socket          = /var/run/mysqld/mysqld.sock
#datadir         = /var/lib/mysql
#socket = /usr/mysql/mysqld.sock
#pid-file = /usr/mysql/mysqld.pid
 
datadir  = /usr/mysql/data
 
general_log = 1
general_log_file = /var/log/mysql/access.log
log-error = /var/log/mysql/error.log
 
character_set_server = utf8mb4
collation_server = utf8mb4_bin
secure-file-priv= NULL
Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
Custom config should go here
!includedir /etc/mysql/conf.d/

创建启动容器

docker run -itd --name=mysql -v /usr/mysql/conf/my.cnf:/etc/mysql/my.cnf -v /usr/mysql/data:/usr/mysql/data -v /var/log/mysql:/var/log/mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=mysql mysql:8.0.26

说明: -v : 挂载宿主机目录和 docker容器中的目录,前面是宿主机目录,后面是容器内部目录 -d : 后台运行容器 -p 映射容器端口号和宿主机端口号 -e 环境参数,MYSQL_ROOT_PASSWORD设置root用户的密码

下边修改mysql的访问权限为所有客户端可以访问:

进入容器内部

sudo docker exec -it mysql /bin/bash

连接mysql

mysql -uroot -pmysql

使用mysql库

use mysql;

修改访问主机以及密码等,设置为所有主机可访问

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'mysql';
flush privileges;

1.3 远程连接虚拟机

虚拟机启动成功,下边使用ssh客户端工具(FinalShell)远程 连接 虚拟机。

打开FinalShell软件,没有安装的可以从课程资料“软件工具”目录获取安装程序(finalshell_install.exe)。

通过下图所示建立新连接:

填写连接信息:

IP地址:192.168.101.68

账号与密码为:root/centos

如下图:

点击“确定”,创建连接成功,如下图:

双击连接信息,连接成功如下图:

执行 systemctl start docker 启动docker。

启动mysql:docker start mysql

以上软件如果已经启动不用重复启动

查询docker容器:docker ps

如下图:

1.4 修改IP

如果虚拟机IP不是192.168.101.68需要修改虚拟机IP地址为192.168.101.68。

修改方法如下:

确保在root用户下进行操作,进入网络配置文件network-scripts目录下,找到我们需要修改的配置文件:

cd /etc/sysconfig/network-scripts/
vi ifcfg-ens33

使用ls命令,列出该目录下的文件。其中“ifcfg-ens33”的文件,为我们需要修改的网络配置文件。

修改配置文件

使用vim命令(vi命令也可以),对文件进行配置:

  1. 我们需要修改BOOTPROTO="static"也就是将dhcp改为static
  2. 修改ONBOOT=“yes” 意思是将网卡设置 为开机启用.
  3. 修改IPADDR=192.168.101.68
  4. 修改GATEWAY=192.168.101.2

ifcfg-ens33文件内容如下:

[root@localhost network-scripts]# cat ifcfg-ens33
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=28711c7c-1216-454e-a454-b7c9a08e71e6
DEVICE=ens33
ONBOOT=yes
IPV6_PRIVACY=no
IPADDR=192.168.101.68
PREFIX=24
GATEWAY=192.168.101.2
DNS1=8.8.8.8

还需要修改vmware的网络配置

修改完毕,重启虚拟机即可。

2 IDEA环境配置

安装IDEA,根据下边的步骤进行配置。

2.1 编码配置

2.2 自动导包设置

IDEA可以自动优化导入包,但是有多个同名的类调用不同的包,必须自己手动Alt+Enter设置, 下面可以通过设置来进行导包优化。

2.3 提示忽略大小写

IDEA代码提示默认是区分大小写的,设置为提示忽略大小写,编译我们后期的开发

2.4 设置 Java 编译级别

工程创建成功,点击Project Structure:

点击Project,设置SDK为11及Project language level,如下图:

3 Maven环境

3.1 安装Maven

下载maven3.8.6版本,下载链接如下:

https://dlcdn.apache.org/maven/maven-3/3.8.6/binaries/apache-maven-3.8.6-bin.zip

解压apache-maven-3.8.6-bin.zip到没有中文的目录下。

已安装maven的不用重复安装。

3.2 配置仓库

1、解压课程资料中的maven仓库下的repository.zip到本地硬盘

2、在Maven的conf目录中setting.xml文件中配置本地仓库的地址。

配置中央仓库位置:

在setting.xml文件中配置阿里云中央仓库地址。

3.3 IDEA中配置maven

在IDEA中配置maven:进入 File --> Settings --> Build --> Build Tools --> Maven

配置maven安装目录、setting.xml及本地仓库的位置。

4 配置Git环境

在个人电脑安装Git,使用常用软件工具目录中的Git-2.37.3-64-bit.exe。

也可以自行下载,地址:https://git-scm.com/ (windows版本:https://git-scm.com/download/win

安装成功,在右键菜单出现Git菜单,如下图

配置git邮箱:

git config --global user.name "你的名字"
git config --global user.email "你的邮箱"

安装成功在IDEA中配置git的安装目录

5 导入商城项目

5.1 拉取项目

首先,我们需要熟悉黑马商城项目的基本结构:

本课程提供的git地址为:https://gitee.com/Herbbbb/hmall

大家需要登录自己gitee账号,Fork该仓库到自己的空间,Fork是将其它仓库的内容复制到自己仓库。

登录gitee,然后在浏览器输入:https://gitee.com/Herbbbb/hmall, 仓库地址,点击"Fork",如下图:

然后选择目标空间进行复制,Fork即拷贝远程仓库:https://gitee.com/Herbbbb/hmall 项目到自己的仓库。

点击“确定”复制成功,此时 hmall 工程已复制到自己的仓库中,点击“克隆/下载”,复制仓库地址

然后从此Git仓库克隆hmall到代码目录。

输入远程仓库地址,并选择本地代码目录:

在弹出窗口选择信任该项目,接下来打开克隆成功的工程如下图:

特别说明

相关文章
|
15小时前
|
Java 网络安全 开发工具
[MES]不合格订单接入提醒功能(☆☆☆) 1.代码运行
本文介绍入职后如何快速搭建开发环境并运行项目,包括克隆代码、配置JDK/Maven/Git等工具的求助策略,并模拟真实需求:实现不合格工单超30分钟自动通知(短信/钉钉),涉及Git、Maven、SpringBoot及定时任务技术,提升新人实战能力。
|
12小时前
|
自然语言处理 搜索推荐 Java
ES分布式搜索引擎入门
本课程介绍Elasticsearch的核心概念与应用,涵盖倒排索引原理、IK分词器使用及Java Client操作,实现高效全文检索、增删改查、批量导入、查询优化等功能,提升搜索性能与体验。
ES分布式搜索引擎入门
|
11小时前
|
SQL 存储 JSON
慢SQL说起:淘天交易订单表如何做索引优化
本文以淘天电商订单表的慢SQL优化实践为切入点,系统剖析了非典型慢SQL的成因与排查方法,深入讲解了索引分类、B+Tree与B-Tree结构差异、执行计划解读及Query Profiler等诊断工具的使用,并结合大表索引变更案例,总结了索引优化理论与线上SOP,提炼出常见慢SQL问题的解决策略。
慢SQL说起:淘天交易订单表如何做索引优化
|
8小时前
|
设计模式 Linux 开发工具
Day02
熟悉Docker部署,掌握docker run、dockerfile及compose集群部署;熟练使用镜像与容器相关指令。了解常用Linux命令如ls、cd、grep、ps、top等,掌握日志查看技巧,能通过cat、grep、vim等命令快速定位问题。
|
15小时前
|
运维 Devops 开发工具
生产环境缺陷管理
git-poison是一款基于go-git的分布式bug管理工具,解决多分支开发中bug漏修、漏发等协同难题。通过“投毒-解毒”机制,实现bug全流程自动化追踪与发布卡点,降低沟通成本,提升发布安全性,已在大型团队落地应用。
|
8小时前
|
负载均衡 算法 Java
Day01
本文介绍微服务架构的适用场景及核心组件,对比单体与微服务优劣,讲解Nacos注册中心心跳机制及其与Eureka异同,涵盖常见负载均衡算法,并梳理Java基础理论如JMM、HashMap、线程池等,助力技术面试准备。
|
8小时前
|
存储 Java 数据库
项目《四方保险》
本系列分享涵盖保险系统架构、数据库与功能设计、微服务划分、支付流程、保费计算、埋点设计及短信平台实现等实战经验,深入探讨《四方保险》项目中关键技术方案与优化策略,助力提升系统稳定性与业务支撑能力。(238字)
|
15小时前
|
SQL Dubbo Java
线程池:故障梳理总结
本文从故障与技术双重视角,总结线程池满导致服务不可用的常见原因及应对策略。涵盖数据库慢查询、热更新、DDL 锁表、深分页等典型故障案例,并深入分析 Dubbo、HTTP、Druid 等连接池超时设置、资源隔离与限流保护机制,帮助开发者快速定位问题并实现 fast-fail 防护,提升系统稳定性。
|
8小时前
|
存储 缓存 NoSQL
项目《神领物流》
本项目为基于微服务架构的智能物流系统,涵盖用户端、快递员端、司机端及管理端。采用GitFlow协作,Jenkins实现CI/CD,通过Neo4j进行路线规划,结合Redis、MongoDB优化性能与存储,集成微信登录与权限管家,实现高效、智能的物流调度与管理。
|
9小时前
|
Java 开发工具 数据安全/隐私保护
项目《中州养老》
《中州养老》是一个为养老院打造的单体后台管理系统,涵盖员工管理端与家属小程序端。系统功能完善,包括预约、入住、退住、计费及健康监测等模块。项目采用SpringBoot+Vue3技术栈,结合Redis缓存、阿里云IoT平台与OSS存储,实现高效稳定的数据交互与实时监控。支持RBAC权限控制、智能报警、微信登录、定时任务等功能,提升养老管理智能化与服务体验。(239字)