在 Mac 上安裝 Java 和 IntelliJ IDEA(完整筆記)

目錄

  1. 檢查是否已安裝 Java
  2. 安裝 Java(JDK)
  3. 設置 JAVA_HOME 環境變量
  4. 安裝 IntelliJ IDEA
  5. 配置 IntelliJ IDEA 使用 JDK
  6. 驗證和測試環境是否成功

1. 檢查是否已安裝 Java

打開終端(Terminal),輸入:

java -version

如果提示找不到命令或 Java 版本信息過舊,說明需要安裝新的 JDK。


2. 安裝 Java(JDK)

方法一:使用 Homebrew 安裝(推薦)

  1. 查看可安裝的 OpenJDK 版本:
brew search openjdk
  1. 安裝某個版本(例如 JDK 17):
brew install openjdk@17
  1. 安裝完成后,Homebrew 會提示你添加路徑。通常是類似:
sudo ln -sfn /opt/homebrew/opt/openjdk@17/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk-17.jdk
  1. 設置環境變量:

~/.zshrc 文件中添加(適用于 Zsh,macOS 默認):

export JAVA_HOME="/opt/homebrew/opt/openjdk@17"
export PATH="$JAVA_HOME/bin:$PATH"

保存后運行:

source ~/.zshrc
  1. 再次確認版本:
java -version

方法二:從 Oracle 官網下載安裝包

  1. 打開官網:https://www.oracle.com/java/technologies/javase-downloads.html

  2. 下載 macOS 版本(.dmg),安裝后系統會自動配置環境。


3. 設置 JAVA_HOME 環境變量(可選但推薦)

如果你用的是 Oracle JDK,也可以設置:

export JAVA_HOME=$(/usr/libexec/java_home)

添加到 ~/.zshrc 后運行:

source ~/.zshrc

4. 安裝 IntelliJ IDEA

方法一:通過 Homebrew Cask 安裝(推薦)

brew install --cask intellij-idea

等待安裝完成。

方法二:官網下載

  1. 訪問:https://www.jetbrains.com/idea/download/
  2. 選擇 macOS 版本,下載 .dmg 安裝包
  3. 安裝并拖入“應用程序”目錄

5. 配置 IntelliJ IDEA 使用 JDK

  1. 啟動 IntelliJ IDEA

  2. 創建或打開項目

  3. 打開菜單:File > Project Structure > SDKs

  4. 點擊 + 添加 JDK,路徑選擇為:

    • 如果用 Homebrew 安裝的是 OpenJDK 17,路徑可能是:

      /opt/homebrew/opt/openjdk@17
      
    • 如果用 Oracle 安裝,則可以使用:

      /Library/Java/JavaVirtualMachines/
      
  5. 添加后,在 Project 頁簽中設置當前項目使用此 JDK。


6. 驗證安裝是否成功

在終端測試 Java

java -version
javac -version

在 IntelliJ IDEA 中創建 Java 程序

  1. File > New > Project > Java
  2. 編寫簡單的 Java 程序:
public class HelloWorld {public static void main(String[] args) {System.out.println("Hello, Java on macOS!");}
}
  1. 點擊運行,確認輸出成功。

參考鏈接

  • OpenJDK 官網:https://openjdk.org
  • Oracle JDK 官網:https://www.oracle.com/java/technologies/javase-downloads.html
  • IntelliJ IDEA 官網:https://www.jetbrains.com/idea/
  • Homebrew 官網:https://brew.sh

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/88378.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/88378.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/88378.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

基于Java+Maven+Testng+Selenium+Log4j+Allure+Jenkins搭建一個WebUI自動化框架(2)對框架加入業務邏輯層

在上篇中,我們已經搭建好了框架的基本雛形,但只是引入了頁面層、用例層的思想,我們在實際使用中會發現,如果我們很多的用例需要很多前置工作,這些前置工作又有可能涉及到多個頁面,那么我們在維護的時候就會…

uniapp ruoyi-app 中使用checkbox 無法選中問題

<view class"flex align-center"> <checkbox-group> <label> <checkbox value"cb" checked"true" /> 記住密碼 </label> </checkbox-group> </view>colorui.css 文件中注釋掉兩處即可全局搜索…

如何快速學習GO語言

https://go.dev/tour/welcome/1 這個是官方的引導&#xff0c;很實用基本重點內容都涵蓋了&#xff0c;并且可以一邊學習一邊練習&#xff0c;非常好用 簡單介紹一下&#xff1a; Hello, 世界 歡迎訪問 Go 編程語言教程。 本教程分為幾個模塊&#xff0c;點擊本頁左上角的 …

AI 產品經理必看:神秘技術架構圖如何打通跨團隊溝通壁壘?

? 你好&#xff0c;我是 三橋君 引言 在AI產品的開發過程中&#xff0c;技術架構圖是連接業務需求與技術實現的橋梁。然而&#xff0c;許多AI產品經理常常面臨以下挑戰&#xff1a;研發團隊認為需求描述不清晰&#xff0c;業務團隊與技術團隊溝通不暢&#xff0c;技術選型時…

【科研繪圖系列】R語言繪制解剖圖

文章目錄 介紹加載R包數據下載導入數據數據預處理畫圖系統信息參考介紹 【科研繪圖系列】R語言繪制解剖圖 加載R包 # install.packages("devtools") # library(devtools) # devtools::install_github("jespermaag/gganatogram")library(gganatogram) li…

【unity編輯器開發與拓展EditorGUILayoyt和GUILayoyt】

EditorGUILayout 與 GUILayout 的核心區別及使用場景詳解 一、對比表特性GUILayoutEditorGUILayout命名空間UnityEngineUnityEditor使用場景運行時 UI 編輯器擴展僅限編輯器擴展控件風格基礎游戲風格&#xff08;無編輯器優化&#xff09;原生 Unity 編輯器風格布局復雜度基礎…

【數據結構】8. 二叉樹

文章目錄一、樹的概念及結構1、樹的概念2、樹的相關概念3、樹的表示4、樹的實際運用二、二叉樹的概念及結構1、二叉樹的概念2、特殊的二叉樹3、二叉樹的性質4、二叉樹的存儲結構三、二叉樹的順序結構及實現1、二叉樹的順序結構2、堆的概念及結構3、堆的實現0&#xff09;準備工…

Spring MVC中異常處理

1.全局異常處理1.1什么是全局異常處理器全局異常處理器是SpringMVC框架中的一種異常處理機制&#xff0c;用于統一處理由控制器拋出的異常。全局異常處理器可以幫助我們捕獲和處理控制器中的異常&#xff0c;并且根據不同的異常類型進行不同的處理操作&#xff0c;從而保障應用…

imx6ull-系統移植篇2—— U-Boot 命令使用(上)

目錄 前言 U-Boot 命令 help 信息查詢命令 bdinfo printenv version 環境變量操作命令 setenv 和 saveenv 修改環境變量 新建環境變量 刪除環境變量 內存操作命令 md nm mm mw cp cmp 網絡操作命令 ping 命令 dhcp 命令 nfs 命令 tftp 命令 EMMC 和 S…

vector之動態二維數組的底層

引言&#xff1a;在計算機編程領域&#xff0c;二維動態數組是一種能夠在程序運行期間動態調整其大小的二維數組數據結構。它與靜態二維數組的關鍵區別在于&#xff0c;靜態二維數組在編譯時就需要確定其大小&#xff0c;而二維動態數組的大小可以在程序運行過程中根據實際需求…

第十六天,7月10日,八股

1、mybatis的延遲加載需要時才加載關聯對象&#xff0c;而不是查詢主對象時&#xff0c;立刻加載所有關聯對象&#xff0c;這樣可以提高查詢性能并減少不必要的數據庫訪問&#xff0c;例如&#xff1a;一個訂單表包含著商品列表&#xff08;一對多&#xff09;&#xff0c;當查…

CSS中的Element語法

1.1 Element語法1.1.1 案例 1. 快速生成10個div,并且每個div里面是從1到10的內容2.生成一個div標簽&#xff0c;類名為one,并且同時生成一個id為first的p標簽1.1.2 快速生成CSS樣式語法 CSS基本采取簡寫形式即可 比如w22 按住tab鍵 可以生成 width:200px比如lh26px 按住tab鍵 可…

Go從入門到精通(21) - 一個簡單web項目-添加swagger文檔

Go從入門到精通(20)-一個簡單web項目-服務搭建 文章目錄Go從入門到精通(20)-一個簡單web項目-服務搭建前言前期準備為API 添加 Swagger 文檔1.安裝依賴2.添加 Swagger 注釋main.goapp.goapi.gopublic_handler.goauth_handler.gocommon_constant.gocommon_dto.gotoken_utils.go3…

自動駕駛環境感知:天氣數據采集與融合技術實戰

天氣與我們日常各類生活場景密不可分&#xff0c;在駕駛場景里當車主發動汽車準備駛向目的地時&#xff0c;窗外的陰晴或許只是直觀感受&#xff0c;而真正影響駕駛安全與行程效率的&#xff0c;可能是幾公里外的突發暴雨、橋面的結冰預警&#xff0c;或是前方路段的強側風等級…

基于svga+uniapp的微信小程序動畫組件開發指南

lottie動畫指南 效果 概述 本項目使用 svgaplayer.weapp.js 庫來實現 SVGA 動畫播放功能&#xff0c;支持在微信小程序、H5 等多端環境下播放高質量的矢量動畫。SVGA 是一種跨平臺的開源動畫格式&#xff0c;具有文件小、渲染性能高的特點。 技術棧 核心庫: svgaplayer.wea…

數據結構與算法——計算直線的交點數

前言&#xff1a; 這是之前做的一道筆試題&#xff0c;當時沒寫出來煩惱很久&#xff0c;這次記錄一下。 題目鏈接&#xff1a; Dotcpp--題目 1174: 計算直線的交點數 參考文章&#xff1a; CSDN--槐陽7--計算直線的交點數 題目&#xff1a; 解題思考&#xff1a; 在當時…

大模型及agent開發6 OpenAI Assistant API 高階應用 - 流式輸出功能

1.Assistant API 的主要優點&#xff1a; 減少編碼工作量、自動管理上下文窗口、安全的訪問控制、工具和文檔的輕松集成 本節講應用設計和性能流式輸出&#xff1a;借助流式輸出&#xff0c;可以讓應用程序實時處理和響應用戶輸入。具體來說&#xff0c;這種技術允許數據在生成…

React Native安卓劉海屏適配終極方案:僅需修改 AndroidManifest.xml!

&#x1f4cc; 問題背景在 React Native 開發中&#xff0c;我們經常會遇到安卓設備劉海屏&#xff08;Notch&#xff09;適配問題。即使正確使用了 react-native-safe-area-context 和 react-navigation&#xff0c;在一些安卓設備&#xff08;如小米、華為、OPPO 等&#xff…

Spring Boot整合MyBatis+MySQL實戰指南(Java 1.8 + 單元測試)

一、環境準備 開發工具&#xff1a;IntelliJ IDEA 2023.1 JDK 1.8.0_382 Maven3.6.3數據庫&#xff1a;MySQL 8.0.21依賴版本&#xff1a;<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifact…

游戲開發日記

如何用數據表來儲存&#xff0c;位置坐標&#xff08;XYZ&#xff09;&#xff1a;決定了對象在世界中的擺放資源ID / 圖片URL&#xff1a;決定了使用什么模型或貼圖事件ID / 特效&#xff1a;是否觸發某些事件&#xff08;例如點擊、交互&#xff09;邏輯索引&#xff08;Grid…