记录一下Mac配置SpringBoot开发环境

由于很多项目喜欢使用传统的 Java 8 进行开发,而且 Java 8 的稳定性也是经过长久考验的,我们接下来就尝试一下,在一台新的 Mac 中配置 Java 环境,并且开始创建 SpringBoot 项目。

首先,去 Oracle 官网下载 java8 JDK ,选择 macOS 的 .dmg 版本安装包。
在这里插入图片描述
一路 continue 进行安装:
在这里插入图片描述
1. Java 环境配置
使用命令打开 .bash_profile 文件:

vim ~/.bash_profile

选择编辑模式,之后插入一下环境变量语句:

# java-environment-config
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.jdk/Contents/Home
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib.dt.jar:.
export JAVA_HOME
export PATH
export CLASSPATH

注意第二行中的 jdk1.8.jdk ,这里要改成你自己的 JDK 版本。
最后两行是maven需要的,这一步先忽略。

在这里插入图片描述

重要提示,博主之前在这里卡了一段时间,是由于jdk路径不对,导致后面的maven出错,最好按照以下两点核对一下路径是否正确:

1、查看Java的安装路径:/usr/libexec/java_home -V #这里一定要是大写的V。
2、查看变量值: echo $JAVA_HOME

保存以后,重新打开终端,输入以下命令保存刚才的文件:

source ~/.bash_profile

最后,新打开一个终端,输入命令 java查看环境是否生效:
在这里插入图片描述

  1. 验证 IDEA 使用 java1.8
    打开 IDEA ,新建一个项目,发现这时候已经自动识别出来 Java 解释器:
    在这里插入图片描述
  2. 配置 Maven 环境
    去 Apache官网 下载对应的 maven 压缩包
    在这里插入图片描述

下载以后,解压文件夹放到 “/Users/xx用户/” 路径下面,这里找不到路径可以进入访达后按下‘cmd+shift+G’进入具体页面。
在这里插入图片描述
在终端里输入以下命令,打开 .bash_profile 文件:

vim ~/.bash_profile

在 .bash_profile 文件中配置一下 maven 环境:

export MAVEN_HOME=/Users/summer/apache-maven-3.9.6
export PATH=$PATH:$MAVEN_HOME/bin

重启终端,输入命令

mvn -v

如果出现以下结果,说明此时 maven 环境配置成功。

在这里插入图片描述

但是,此时我们还不能关终端,在 maven 包中的 conf 文件夹中的 setting.xml 文件中,配置本地仓库地址和阿里云仓库地址。

<mirror> <id>alimaven</id> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> <mirrorOf>central</mirrorOf> 
</mirror>

在这里插入图片描述

至此,maven 环境配置结束。

  1. 在 IDEA 中加入 maven 仓库
    打开 IDEA 的 preference ,打开 maven 配置页面,将刚才的仓库地址和配置文件设置如下:

在这里插入图片描述

其中 Maven home path 为之前解压好的 maven 的路径,User settings file 是 maven 路径下的 conf 目录下的 settings.xml 文件的路径。

Local repository是默认仓库,但是当修改User settings file之后,里面的内容会自动读取 settings.xml 文件中的本地仓库路径。

配置好之后,点击Apply,就OK了。

  1. MySQL 与 Navicat
    安装 MySQL 开源的不难,安装 Navicat要难些,它是要收费的,如果你是土豪当我没说,
    在这里插入图片描述

只有找它的破解版本,下面提供几种方式大家试一试,亲测有效,如果你还是不行,可以自己再找一找:
1、https://www.jianshu.com/p/1c64f3d07e5a 。他的安装包是全的,rpk 文件也有,过程也很清晰,跟着一步步做就好了。我要说的是,安装完 Navicat 以后,出现的各种屌问题。
2、https://www.bilibili.com/read/cv25329508/,这个步骤会简单些。
3、https://baijiahao.baidu.com/s?id=1781342162627385221&wfr=spider&for=pc 这个mac版的在后面

到这里,我们新建一个Spring Boot 项目,写好数据库配置,就可以运行了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/210852.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

通过时间交织技术扩展ADC采样速率的简要原理

前言 数据采集是将自然界中存在的模拟信号通过模数转换器&#xff08;ADC&#xff09;转换成数字信号&#xff0c;再对该数字信号进行相应的接收和处理。数据采集系统作为数据采集的手段&#xff0c;在移动通信、图向采集、无线电等领域有重要作用。随着电子信息技术的飞速发展…

感冒 发烧 咳嗽记录

感冒 风寒: 清鼻涕 热感冒: 细菌记录, 脓鼻涕. 咳嗽 先是清痰咳嗽, 后是浓痰,细菌感染, 白细胞噬菌体, 所以要补充蛋白质,维生素. 胸骨上窝 , 天突穴 ,后面上支气管的位置, 往下会变成左右两支,连接到肺部 普通咳嗽: 用哈气拍打背部的方式. 把痰去除. 吃点 盐酸氨溴索片 增加支…

怎么让百度快速收录,百度SEO收录工具

百度收录对于一个网站的重要性不言而喻。拥有良好的百度收录意味着网站能够更好地被搜索引擎收录&#xff0c;为用户提供更精准的搜索结果。而怎样实现百度快速收录成为了许多网站管理员关注的焦点。 百度收录的重要性 百度是国内最大的搜索引擎之一&#xff0c;拥有数以亿计的…

蓝桥杯真题:四平方和-Java版

import java.io.*;/*先找后两个数for(int i 0; 2 * i * i < n;i)for(int j i; i * i j * j < n;j ) 再找前两个数 for(int i 0;4 * i * i < n; i )for(int j i;2 * (j * j i * i) < n;j )//这样就可以让后两个数尽量大,前两个数尽量小 这样就可以确定后…

题目:小明的彩灯(蓝桥OJ 1276)

题目描述&#xff1a; 解题思路&#xff1a; 一段连续区间加减&#xff0c;采用差分。最终每个元素结果与0比较大小&#xff0c;比0小即负数输出0。 题解&#xff1a; #include<bits/stdc.h> using namespace std;using ll long long; const int N 1e5 10; ll a[N],…

TrustZone之虚拟地址空间

在本系列中的内存管理指南介绍了多个虚拟地址空间或translation regimes的概念。例如&#xff0c;有一个用于EL0/1的translation regime&#xff0c;还有一个用于EL2的独立translation regime&#xff0c;如下所示&#xff1a; 还有专门的翻译方案用于安全状态和非安全状态。例…

Django HMAC 请求签名校验与 Vue.js 实现安全通信

概要 在 Web 应用的开发过程中&#xff0c;确保数据传输的安全性和完整性是一个不容忽视的问题。使用 HMAC&#xff08;Hash-based Message Authentication Code&#xff09;算法对请求内容进行签名校验&#xff0c;是一种常见且有效的安全策略。本文将详细介绍如何在 Django …

Netty网络编程

入门案例 1、服务器端代码 public class HelloServer {public static void main(String[] args) {// 1、启动器&#xff0c;负责装配netty组件&#xff0c;启动服务器new ServerBootstrap()// 2、创建 NioEventLoopGroup&#xff0c;可以简单理解为 线程池 Selector.group(n…

EasyRecovery14破解版 v14.0.0.4 官方免费版(含激活码)

软件介绍 EasyRecovery14高级版是一款功能强大的数据恢复软件&#xff0c;软件对比家庭版本它的使用更加广泛&#xff0c;在恢复数据方面软件可以做到最完整的损失恢复&#xff0c;无论是文档、音乐、软件都可以一键恢复&#xff0c;同时软件还可以对文件的名字、后缀进行修改…

ROS2 galactic生成的bag包里的MarkerArray在humble下播放不正常

近期发现ROS2 galactic下生成的bag包在humble下回放时使用rviz可视化&#xff0c;bag里的点云可以正常看到&#xff0c;但是使用Marker和MarkerArray画的box却死活看不到&#xff0c;感觉很纳闷&#xff0c;看网上有人报告说foxy下生成的bag包在galactic下播放会报SQL错误&…

项目经理是干出来的,不是教出来的

大家好&#xff0c;我是老原。 有不少新手项目经理&#xff0c;在通过了PMP认证考试&#xff0c;拿到PMP证书后&#xff0c;对之前无序的项目管理状态感觉有了一丝通透的感觉&#xff0c;对接受新项目更是信心满满。 然后就有不少没有项目管理经验&#xff0c;且刚刚考取PMP证…

Redis Hash数据类型

Redis Hash数据类型 几乎所有的主流编程语言都提供了哈希(hash)类型&#xff0c;它们的叫法可能是哈希、字典、关联数组、映射。在 Redis 中&#xff0c;哈希类型是指值本身又是一个键值对结构&#xff0c;形如key “key”&#xff0c;value {ffield1, value1 }, … {fieldN…

JDK 历史版本下载以及指定版本应用

参考&#xff1a; 官网下载JAVA的JDK11版本&#xff08;下载、安装、配置环境变量&#xff09;_java11下载-CSDN博客 Gradle&#xff1a;执行命令时指定 JDK 版本 - 微酷网 下载 打开官网地址 Java Downloads | Oracle 当前版本在这里&#xff0c;但是我们要下载历史版本 选…

xcode opencv

1、导入报错 Undefined symbols: linker command failed with exit code 1 (use -v to see invocation) 直接添加如下图内容即可

PostGIS学习教程十:空间索引

PostGIS学习教程十&#xff1a;空间索引 回想一下&#xff0c;空间索引是空间数据库的三个关键特性之一。空间索引使得使用空间数据库存储大型数据集成为可能。在没有空间索引的情况下&#xff0c;对要素的任何搜索都需要对数据库中的每条记录进行"顺序扫描"。索引通…

JSP 设置静态文件资源访问路径

这里 我们先在 WEB目录webapp 下创建一个包 叫 static 就用它来存静态资源 然后 我们扔一张图片进去 我们直接这样写 如下图 找到父级目录 然后寻找下面的 static 下的 img.png 运行代码 很明显 它没有找到 这边 我们直接找到 webapp目录下的 WEB-INF目录下的 web.xml 加入…

[Redis]基础入门

Redis入门 一、初识Redis Redis是一种键值型的NoSql数据库。 其中键值型&#xff0c;是指Redis中存储的数据都是以key、value对的形式存储&#xff0c;而value的形式多种多样&#xff0c;可以是字符串、数值&#xff0c;甚至是json。 NoSql则是相对于传统关系型数据库而言&a…

ctfshow sql 186-190

186大小写绕过 1 order by 3-- 发现union select被过滤&#xff0c;用大小写来绕过 1 union seleCT 1,2,database() --1 union seleCT 1,2,table_name from information_schema.tables where table_schemactfshow_web --1 union seleCT 1,2,column_name from information_schem…

DenseNet分类网络改进(添加SPP)--亲测有效

最近&#xff0c;我在做多分类问题。在针对基模型的选择中&#xff0c;我使用了DenseNet作为基本模型。我在阅读论文时&#xff0c;遇到了一种改进方式&#xff1a; 如上图所示&#xff0c;在全连接层之前引入SPP模块&#xff1a; 代码如下&#xff1a; SPP模块代码&#x…

uniapp中uni.navigateBack返回后刷新页面数据

文章目录 一、前言1.1、[uni.navigateBack](https://uniapp.dcloud.net.cn/api/router.html#navigateback) 二、方法2.1、父页面设置钩子函数onBackPress2.2、uni.$emit和uni.$on监听通知数据变更2.2.1、子页面2.2.2、父页面 2.3、onShow钩子函数处理数据2.3.1、子页面2.3.2、父…