java后端开发环境搭建 mac

在mac pro上搭建一套java 后端开发环境,主要安装的内容有:jdk、maven、git、tomcat、mysql、navicat、IntelliJ、redis。

本人mac pro的系统为mac OS Monterey 12.6.7,主机的硬件架构为x86_64。

左上角关于本机查看系统版本;终端上输入

whe@whedeMacBook-Pro ~ % uname -a
Darwin whedeMacBook-Pro.local 21.6.0 Darwin Kernel Version 21.6.0: Thu Jun  8 23:57:12 PDT 2023; root:xnu-8020.240.18.701.6~1/RELEASE_X86_64 x86_64

查看机器架构:

 一、jdk:

下载官网:Java Downloads | Oracle 中国

安装步骤


    首先选择对应的版本下载到本地(我下载的是19.0.1),双击下载好的dmg文件正常安装即可装。安装成功即可在终端输入命令 java -version 检查下载的版本号。

whe@whedeMacBook-Pro ~ % java -version
java version "19.0.1" 2022-10-18
Java(TM) SE Runtime Environment (build 19.0.1+10-21)
Java HotSpot(TM) 64-Bit Server VM (build 19.0.1+10-21, mixed mode, sharing)


在终端输入命令 : sudo vim ~/.bash_profile 打开bash_profile文件里添加环境参数配置如下(i字母进行插入):

#Setting PATH for JAVA 19.0.1
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-19.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

环境变量添加完成,按esc后输入:wq! 回车,保存并退出bash_profile文件。注意每次修改了配置文件之后,需要执行source命令使文件生效。bash_profile文件就是:source ~/.bash_profile。

最后在终端输入命令 javac,查看是否成功。

whe@whedeMacBook-Pro ~ % sudo vim ~/.bash_profile
Password:
whe@whedeMacBook-Pro ~ % source ~/.bash_profile  
whe@whedeMacBook-Pro ~ % javac                   
用法: javac <options> <source files>
其中, 可能的选项包括:@<filename>                  从文件读取选项和文件名-Akey[=value]                传递给注释处理程序的选项--add-modules <模块>(,<模块>)*除了初始模块之外要解析的根模块; 如果 <module>为 ALL-MODULE-PATH, 则为模块路径中的所有模块。--boot-class-path <path>, -bootclasspath <path>覆盖引导类文件的位置--class-path <path>, -classpath <path>, -cp <path>指定查找用户类文件和注释处理程序的位置-d <directory>               指定放置生成的类文件的位置-deprecation                 输出使用已过时的 API 的源位置--enable-preview             启用预览语言功能。要与 -source 或 --release 一起使用。-encoding <encoding>         指定源文件使用的字符编码-endorseddirs <dirs>         覆盖签名的标准路径的位置-extdirs <dirs>              覆盖所安装扩展的位置-g                           生成所有调试信息-g:{lines,vars,source}       只生成某些调试信息-g:none                      不生成任何调试信息-h <directory>               指定放置生成的本机标头文件的位置--help, -help, -?            输出此帮助消息--help-extra, -X             输出额外选项的帮助-implicit:{none,class}       指定是否为隐式引用文件生成类文件-J<flag>                     直接将 <标记> 传递给运行时系统--limit-modules <模块>(,<模块>)*限制可观察模块的领域--module <模块>(,<模块>)*, -m <模块>(,<模块>)*只编译指定的模块,请检查时间戳--module-path <path>, -p <path>指定查找应用程序模块的位置--module-source-path <module-source-path>指定查找多个模块的输入源文件的位置--module-version <版本>        指定正在编译的模块版本-nowarn                      不生成任何警告-parameters                  生成元数据以用于方法参数的反射-proc:{none,only}            控制是否执行注释处理和/或编译。-processor <class1>[,<class2>,<class3>...]要运行的注释处理程序的名称; 绕过默认的搜索进程--processor-module-path <path>指定查找注释处理程序的模块路径--processor-path <path>, -processorpath <path>指定查找注释处理程序的位置-profile <profile>           请确保使用的 API 在指定的配置文件中可用--release <release>为指定的 Java SE 发行版编译。支持的发行版:7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19-s <directory>               指定放置生成的源文件的位置--source <release>, -source <release>提供与指定的 Java SE 发行版的源兼容性。支持的发行版:7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19--source-path <path>, -sourcepath <path>指定查找输入源文件的位置--system <jdk>|none          覆盖系统模块位置--target <release>, -target <release>生成适合指定的 Java SE 发行版的类文件。支持的发行版:7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19--upgrade-module-path <path>覆盖可升级模块位置-verbose                     输出有关编译器正在执行的操作的消息--version, -version          版本信息-Werror                      出现警告时终止编译

二、maven

maven下载官网:Maven – Download Apache Maven

安装步骤


选择对应的maven版本下载到本地,我下载的是Maven 3.9.3,解压缩到/usr/local/路径下,然后在~/.bash_profile文件里添加环境变量(同jdk步骤),内容如下:

export MAVEN_HOME=/usr/local/maven/apache-maven-3.9.3/ 
export PATH=$PATH:$MAVEN_HOME/bin

然后在终端输入命令mvn -v,验证是否安装成功。

whe@whedeMacBook-Pro ~ % mvn -v
Apache Maven 3.9.3 (21122926829f1ead511c958d89bd2f672198ae9f)
Maven home: /usr/local/maven/apache-maven-3.9.3
Java version: 19.0.1, vendor: Oracle Corporation, runtime: /Library/Java/JavaVirtualMachines/jdk-19.jdk/Contents/Home
Default locale: zh_CN_#Hans, platform encoding: UTF-8
OS name: "mac os x", version: "12.6.7", arch: "x86_64", family: "mac"


安装成功后配置自己的本地仓库,在 /usr/local/maven/apache-maven-3.9.3/conf/settings.xml文件里添加国内镜像以及设置本地仓库地址。

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

三、git

常见的git安装方式有三种:电脑自带,brew,以及官网下载。

git官网:Git

安装步骤:

有的mac上可能自带git,所以只需要直接在终端上输入命令 git --version(git -v也可以) ,然后按照提示一步一步确认,就可以自动安装。安装成功后再次输入git --version,会出现安装的git的版本。输入命令:which git 查看git的安装路径为/usr/bin/git。
 

whe@whedeMacBook-Pro ~ % git -v          
git version 2.37.1 (Apple Git-137.1)
whe@whedeMacBook-Pro ~ % git --version
git version 2.37.1 (Apple Git-137.1)

四、tomcat

tomcat官网:http://tomcat.apache.org

安装步骤

在官网上下载对应的版本(建议下载稳定版本)到本地解压,将解压缩后的文件移动到/usr/local/。

 在~/.bash_profile文件里添加环境参数配置

export PATH=$PATH:/usr/local/tomcat/apache-tomcat-10.1.11/bin

然后给startup.sh赋权,在终端输入命令

cd /usr/local/tomcat/apache-tomcat-10.1.11/bin
chmod 777 *.sh

执行这个脚本,即在终端输入命令:./startup.sh启动tomcat。最后打开浏览器输入localhost:8080就可以正常访问了。

五、mysql

mysql下载官网:https://dev.mysql.com/downloads/mysql/

安装步骤:


访问官网下载对应安装包,在本地双击下载的dmg包进行安装。一路继续到Configuration,这里选择 Use Legacy Password Encryption 然后点击 Next,然后设置root账户的密码,点击 Finish 安装完成。点击左上角苹果图标,选择系统设置,最下面出现mysql图标,点击进入可以查看到左边的两个绿色的小标意味着MySQL安装成功。


最后在~/.bash_profile文件里添加环境参数,然后在终端执行命令 source ~/.bash_profile 使配置生效。在终端输入命令mysql --version,查看安装的版本,然后在终端输入mysql -u root -p 然后输入密码,进入MySQL使用。

export PATH=$PATH:/usr/local/mysql/bin

六、navicat

七、IDEA

自己可以网上找资源,这两个都是收费的应用,也可以先试用。

八、redis

redis官网:https://redis.io/download/

安装步骤

选择最新的稳定版进行安装,解压缩文件然后移动文件到/usr/local/文件夹下,打开终端,输入以下命令,进行编译安装

# 切换到redis-stable目录
cd redis-stable
# 编译测试
sudo make test
# 编译安装
sudo make install
#启动redis
redis-server
#链接redis
redis-cli -p 6379 -h 127.0.0.1

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

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

相关文章

Django搭建图书管理系统04:View视图初探

数据库虽然已经有了&#xff0c;但是用户通常只需要这个庞大数据库中的很小一部分进行查看、修改等操作。为此还需要代码来恰当的取出并展示数据&#xff0c;这一部分代码就被称为视图。 Django 中视图的概念是**「一类具有相同功能和模板的网页的集合」**。 Hello World! 首…

HarmonyOS/OpenHarmony应用开发-程序包多HAP机制(上)

一、多HAP机制设计目标 方便开发者模块化的管理应用&#xff0c;好的应用一般都是模块化管理&#xff0c;模块之间属于松耦合关系。多HAP方便了开发者将业务划分成多个模块&#xff0c;每个模块放到独立的HAP中。例如支付类应用&#xff0c;有统一的主界面&#xff0c;主界面管…

图论之寻找桥边

目录 ①基准法 ②并查集 ③逆向思维之标记环边 ④并查集压缩路径 ①基准法 在图论中&#xff0c;一条边被称为“桥”代表这条边一旦被删除&#xff0c;这张图的连通块数量会增加。等价地说&#xff0c;一条边是一座桥当且仅当这条边不在任何环上。一张图可以有零或多座桥。…

golang数据库操作相应内容--推荐【比较全】

Go为开发数据库驱动定义了一些标准接口&#xff0c;开发者可以根据定义的接口来开发相应的数据库驱动&#xff0c;只要是按照标准接口开发的代码&#xff0c; 以后需要迁移数据库时&#xff0c;不需要任何修改。 一、database/sql接口 1.1sql.Register 这个存在于database/s…

Java新特性:Lambda表达式

Java新特性&#xff1a;Lambda表达式 Lambda 表达式&#xff08;Lambda expression&#xff09;&#xff0c;也可称为闭包&#xff08;Closure&#xff09;&#xff0c;是 Java&#xff08;SE&#xff09;8 中一个重要的新特性。Lambda 表达式允许我们通过表达式来代替功能接口…

Django_haystack全文搜索

haystack是全文搜索的框架&#xff0c;支持whoosh、solr、Xapian、Elasticsearc四种全文检索引擎&#xff0c;点击查看官方网站。 whoosh是用纯Python编写的全文搜索引擎&#xff0c;虽然性能比不上sphinx、xapian、Elasticsearc等&#xff0c;但是无二进制包&#xff0c;程序…

一百二十八、Kettle——从Hive增量导入到ClickHouse

一、目标 用Kettle把Hive的DWS层数据增量导入到ClickHouse中 工具版本&#xff1a;Kettle&#xff1a;8.2 Hive:3.1.2 ClickHouse21.9.5.16 全量导入请访问拙作链接 http://t.csdn.cn/Rqvuvhttp://t.csdn.cn/Rqvuv 二、前提准备 &#xff08;一&#xff09;kettl…

Vue3 +Echarts5 可视化大屏——屏幕适配

项目基于Vue3 Echarts5 开发&#xff0c;屏幕适配是使用 scale 方案 Echarts组件按需引入&#xff0c;减少打包体积 地图组件封装&#xff08;全国&省份地图按需加载&#xff09; 效果图&#xff1a; 屏幕适配 大屏适配常用的方案有 rem vw/vh 和 scale 。 rem vw/vh …

vue 使用 npm run dev命令后 自动打开浏览器为谷歌

文章目录 需求分析 需求 vue 启动后&#xff0c;想要其自动打开指定浏览器&#xff08;谷歌&#xff09;并设置要打开的IP地址和端口号 分析 package.json 打开package.json文件加上 --open chrome index.js 打开index.js文件&#xff0c;将浏览器设置为自动打开

模板类与继承

模板类与继承 模板类继承普通类普通类继承模板类的实例化版本。普通类继承模板类模板类继承模板类模板类继承模板参数给出的基类 模板类继承普通类 基类 派生类 测试函数; 普通类继承模板类的实例化版本。 模板基类 普通类继承模板基类的实例化版本&#xff1a; 普通…

LVS和keepa lived群集

keepa lived 简述 一.keepalived 服务重要功能 1管理LS负载均衡器软件 keepalived可以通过读取自身的配置文件&#xff0c;实现通过更底层的接口直接管理Lvs配置以及服务的启动 停止功能 这会使 LVS应用跟更加简便 2 支持故障自动切换 (failover) ①两台知己同时安装好kee…

Kotlin~Decorator装饰器模式

概念 装饰模式指的是在不必改变原类文件和使用继承的情况下&#xff0c;动态地扩展一个对象的功能。它是通过创建一个包装对象&#xff0c;也就是装饰来包裹真实的对象。可以运行时动态添加新的功能&#xff0c;而无需改变原来的代码。 特点&#xff1a; 灵活扩展新的功能动态…