使用 SDKMAN! 在 Mac(包括 ARM 架构的 M1/M2 芯片)安装适配 Java 8 的 Maven

好的,这是使用 SDKMAN! 安装适配 Java 8 的 Maven 的步骤:

前提条件:

  • 安装 SDKMAN!: 如果你的系统上没有安装 SDKMAN!,请按照以下说明进行安装:

    bash 复制代码
    curl -s "https://get.sdkman.io" | bash
    source "$HOME/.sdkman/bin/sdkman-init.sh"  # 如果没有自动执行

    完成安装后,打开一个新的终端窗口或运行 source "$HOME/.sdkman/bin/sdkman-init.sh" 使其生效。

  • 确保已安装 Java 8 (可选但推荐): 虽然你可以先安装 Maven,再配置 Java 8,但是最好先安装并设置 Java 8。 使用 SDKMAN! 安装 Java 8:

    bash 复制代码
    sdk list java  # 列出可用的 Java 版本
    sdk install java 8.0.432-zulu
    shell 复制代码
    dgq@dgqdeMacBook-Pro ~ % sdk install maven 3.9.6
    
    Downloading: maven 3.9.6
    
    In progress...
    
    ######################################################################################################### 100.0%
    
    Installing: maven 3.9.6
    Done installing!
    
    
    Setting maven 3.9.6 as default.

    或者,如果你已经安装了 Java 8,可以使用 sdk use java <identifier> 来指定它。 运行 java -version 来验证 Java 8 是否正确配置。

安装 Maven:

  1. 列出可用的 Maven 版本:

    bash 复制代码
    sdk list maven

    这将显示所有可用的 Maven 版本。 选择一个 Maven 3.3.9 或更新的版本 (推荐最新版本)。

  2. 安装 Maven:

    bash 复制代码
    sdk install maven 3.9.6  # 替换 '3.9.6' 为你选择的 Maven 版本

    SDKMAN! 将下载并安装指定的 Maven 版本。

  3. 使用 Maven:

    bash 复制代码
    sdk use maven 3.9.6  # 设置当前会话使用的 Maven 版本
    sdk default maven 3.9.6 # 设置 Maven 3.9.6 为默认版本,这样每次打开新的终端窗口都会使用这个版本。
  4. 验证安装:

    bash 复制代码
    mvn -v
    shell 复制代码
    dgq@dgqdeMacBook-Pro ~ % mvn -v
    Apache Maven 3.9.6 (bc0240f3c744dd6b6ec2920b3cd08dcc295161ae)
    Maven home: /Users/dgq/.sdkman/candidates/maven/current
    Java version: 1.8.0_432, vendor: Azul Systems, Inc., runtime: /Users/dgq/.sdkman/candidates/java/8.0.432-zulu/zulu-8.jdk/Contents/Home/jre
    Default locale: zh_CN, platform encoding: UTF-8
    OS name: "mac os x", version: "15.2", arch: "aarch64", family: "mac"

    这将显示 Maven 的版本信息,确认安装成功。 检查输出,确保它显示了你安装的 Maven 版本,并且使用的 Java 版本是 Java 8。 例如:

    复制代码
    Apache Maven 3.9.6 (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx)
    Maven home: /Users/youruser/.sdkman/candidates/maven/current
    Java version: 1.8.0_362, vendor: Azul Systems, Inc., runtime: /Users/youruser/.sdkman/candidates/java/8u362-zulu/jre
    Default locale: en_US, platform encoding: UTF-8
    OS name: "mac os x", version: "13.6", arch: "x86_64", family: "mac"

注意事项:

  • sdk use vs sdk default : sdk use 命令只在当前终端会话中生效。 sdk default 命令会将指定的版本设置为全局默认版本,每次打开新的终端窗口时都会使用这个版本。

  • 版本选择: 尽量选择最新的稳定版本。 查看 SDKMAN! 提供的列表,选择一个没有标记为测试版或 alpha 版的版本。

  • 环境变量: SDKMAN! 会自动管理 Maven 和 Java 的环境变量,你通常不需要手动设置 M2_HOMEJAVA_HOME

完成这些步骤后,你的系统上就应该已经成功安装了与 Java 8 兼容的 Maven,并可以使用它来构建 Java 项目了。

相关推荐
JAVA面经实录9174 小时前
RabbitMQ 完整面试题答案
java·rabbitmq·java-rabbitmq
xcl092510 小时前
商超智能运营实战:数据驱动提升门店效率与体验指南
java·mfc·宠物
Flynt12 小时前
OpenJDK禁AI代码半年了,现在执行得怎么样?答案是:全靠自觉
java·开源·ai编程
古法安卓18 小时前
Android-日志系统源码解析
android·java·android studio
小夏coding19 小时前
从"一把梭"到"精妙拆解" —— 滑动窗口计时框架的设计演进
java·后端
MacroZheng20 小时前
同事问我:"Claude Code经常失忆,不怕它把项目搞炸?",我:"怕,三个Markdown文件给它装个永不丢失的外置大脑!"
java·人工智能·后端
十年Java程序媛21 小时前
深度实战:JDK21 虚拟线程 + HikariCP 生产正确配比、坑点、监控全套
java·spring boot
xiaoqiMikko21 小时前
有人在搜一个不存在的 Tomcat 版本
java·tomcat
用户3126874877201 天前
ConcurrentHashMap 怎么保证线程安全?从分段锁到 CAS+synchronized
java
vipxieliang1 天前
ValidX vs Apache Commons Validator:功能与性能对比
java·spring boot