Mac m1 intellij idea gradle 通过brew快速安装配置及工具

Mac m1笔记本配置intellij idea gradle,主要会有Mac Java环境配置,maven和gradle的安装和环境配置,intellij idea的安装及配置,大致的主要节点是以上这些,但是本文并不是将所有的过程都做详细介绍,有些内容与之前的篇幅有冗余而只有引入介绍。所有涉及到的组件安装都是通过Mac的包管理工具brew来进行的,而且尽可能的简化环境配置。

安装maven和gradle

brew search maven 查看maven可用的包,我们可以看到不同版本的maven,如[email protected]对应的3.5版本的maven,如果要指定这个版本需要执行brew install [email protected], 笔者直接安装的最新版。

==> Formulae
maven ✔                   maven-completion          maven-shell               [email protected]                 [email protected]                 [email protected]

==> Casks
marvel                                               mauve                                                homebrew/cask-fonts/font-maven-pro
marvin                                               mavensmate                                           homebrew/cask-fonts/font-maven-pro-vf-beta

brew info maven 可以看到笔者写文章的时候最新的maven版本是3.8.5

maven: stable 3.8.5 (bottled)
Java-based project management
https://maven.apache.org/
Conflicts with:
  mvnvm (because also installs a 'mvn' executable)
/usr/local/Cellar/maven/3.8.4 (79 files, 10MB) *
  Poured from bottle on 2021-12-26 at 14:47:29
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/maven.rb
License: Apache-2.0
==> Dependencies
Required: openjdk ✘
==> Analytics
install: 53,700 (30 days), 197,586 (90 days), 751,731 (365 days)
install-on-request: 53,587 (30 days), 196,806 (90 days), 747,357 (365 days)
build-error: 0 (30 days)

同时关键的信息还有From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/maven.rb ,我们可以在浏览器中打开这个git文件,细心的读者就可以发现这个文件就是指定包版本的。关键的信息就是url mirror 和 sha256,如果我们想细化安装自己需要的版本就可以在该GitHub地址上点击 History: 查看历史提交列表,找到你想要的版本,把里边的内容复制到本地的文件。最后执行命令

brew install https://.../maven.rb
  homepage "https://maven.apache.org/"
  url "https://www.apache.org/dyn/closer.lua?path=maven/maven-3/3.8.5/binaries/apache-maven-3.8.5-bin.tar.gz"
  mirror "https://archive.apache.org/dist/maven/maven-3/3.8.5/binaries/apache-maven-3.8.5-bin.tar.gz"
  sha256 "88e30700f32a3f60e0d28d0f12a3525d29b7c20c72d130153df5b5d6d890c673"

安装完之后修改maven home下的setting文件等。

gradle的安装过程和maven的是一模一样的不再赘述。

* 强调一点,如果读者不提前安装好Java那么brew install maven的时候会把openjdk也安装好,因为笔者提前做了《MacBook–配置JDK[m1]》,所以brew info maven时才有 Required: openjdk ✘

无论是maven还是gradle通过brew install之后安装的路径一般是/usr/local/Cellar/下边,而gradle安装完不会自动添加到环境变量,按照安装完成时的提示方式添加到系统的环境变量即可。

intellij idea安装及配置maven和gradle

intellij idea的安装笔者不再赘述,读者可以随便度娘和Google即可找到很多教程,我们直接跳到配置环节。

最大化intellij idea,鼠标移动到最左上方点击 Intellij IDEA –> Preferences –> Build,Exccution,Deployment –> Build Tools –> Maven,主要修改一下三个内容

Mac m1  intellij idea gradle maven环境变量配置
maven环境变量配置

gradle和配置也与maven类似,主要指定gradle home即可

gradle home配置

默认情况下,Gradle不定义任何存储库,它使用的maven本地库,而gradle查找jar包顺序如下:gradle默认会按以下顺序去查找本地的仓库:USER_HOME/.m2/settings.xml >> M2_HOME/conf/settings.xml >> USER_HOME/.m2/repository。

这里就有一个值得关注的细节就是maven本地库指定了,可是gradle的优先检索位置却不是maven的本底仓库,而是去用户级的.m2下去找setting文件,它找不到那它就默认m2是本地缓存库,这样的结果就是maven本地库有一份jar包,m2目录下又有一份jar包文件,我们要做的是把maven的setting文件复制到m2目录下,让gradle可以知道maven本地库的位置。

Mac m1 brew install spark

前言

Mac m1 brew install spark。大数据组件spark入门学习时会有很多系统性的知识需要我们去学习,比如在大数据整个生态圈里spark、Hadoop等组件的角色定位、价值、应用方向、系统安装等。正是这个系统性的思维模式会让我们在各个计算机系统环境中布置spark的时候都惯性的先把Hadoop环境搭建好再依次搭建spark,实际上在Mac笔记本本地安装spark组件的时候是可以不安装Hadoop的,毕竟大多数在Mac上安装spark是为了一些rdd语法的练习,不是为了大量数据的处理。

Mac本身只有自己的软件管理工具的,类似于我们用Linux系统,不同的内核用不同的命令来安装所需的软件或者工具包,如yum, apt-get等。Mac的软件包管理命令是 brew,安装spark环境所需要的所有的软件包都可以用brew来管理。

基本情况

  1. MacBook Pro (13-inch, M1, 2020)
  2. macOS 12.3.1 (21E258)
  3. java version “1.8.0_291” java的安装和环境配置可以通过 文章: http://www.lifefunker.com/archives/51, 来了解具体的操作。有一个事情强调一下,没有bash_profile文件就别自己画蛇添足非要新建一个了…..,没有是因为真的它不再叫这个名字了,找个.zshrc 文件

安装

通过brew安装软件主要也是三步骤:

  • 查找软件包 — brew search
  • 明确软件包 — brew info
  • 安装软件包 — brew install
~ % brew search spark
==> Formulae
apache-spark ✔          spark                   sparkey                 spack                   sparse                  par

==> Casks
spark                               spark-ar-studio                     sparkle                             sparkleshare

命令brew search spark 顾名思义就是查找spark软件包,可以看到返回多个结果,这些结果都是名称,我们要安装的时候都是install对应的名称即可。但是我们发现有Formulae和Casks两个不同的,一般我们按Formulae。

  • 「Formulae」一般是那些命令行工具、开发库、字体、插件等不含 GUI 界面的软件。
  • 「Cask」是指那些含有 GUI 图形化界面的软件,如 Google Chrome、FireFox 、Atom 等。
~ % brew info apache-spark
apache-spark: stable 3.2.1 (bottled), HEAD
Engine for large-scale data processing
https://spark.apache.org/
/usr/local/Cellar/apache-spark/3.2.1 (1,472 files, 322MB) *
  Poured from bottle on 2022-05-16 at 17:36:18
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/apache-spark.rb
License: Apache-2.0
==> Dependencies
Required: openjdk@11 ✔
==> Options
--HEAD
	Install HEAD version
==> Analytics
install: 4,389 (30 days), 13,792 (90 days), 54,640 (365 days)
install-on-request: 4,387 (30 days), 13,777 (90 days), 54,556 (365 days)
 ~ % brew info spark
Warning: Treating spark as a formula. For the cask, use homebrew/cask/spark
spark: stable 1.0.1 (bottled)
Sparklines for the shell
https://zachholman.com/spark/
Not installed
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/spark.rb
License: MIT
==> Analytics
install: 559 (30 days), 1,612 (90 days), 5,995 (365 days)
install-on-request: 544 (30 days), 1,566 (90 days), 5,834 (365 days)
build-error: 0 (30 days)

通过brew info 我们分别查看了 apache-spark 和 spark 的两个软件包的信息,可以看到spark的版本太老旧了,至此我们决定安装apache-spark。

brew install apache-spark

安装完成后,环境变量一般是不会有可执行的命令的,需要我们去zshrc文件中添加对应的sparkhome,但是如果不想那么麻烦就直接去安装的路径下,找到对应的spark-shell文件添加软链来快速打开即可。