[筆記] 在 Mac Apple Silicon 晶片電腦上安裝 Flutter 開發環境

近期因專案需求,要於手邊的 Mac M1 晶片電腦上安裝 Flutter 開發環境。由於步驟實在是過於繁瑣且坑洞不少,這邊筆記一下細節。

mac-apple-silicon-flutter-development


Flutter

  1. https://github.com/flutter/flutter 的 Repo 中取得 stable 的分支
  2. 先切換到特定的版本,如 2.2.3 版
  3. 終端機中的設定檔中新增 $PATH
  4. 新開一個終端機視窗,或用 source <設定檔位置> 讓當前終端機設定重設

JAVA

  1. 在終端機設定中新增 JAVA_HOME 路徑
  2. 用 homebrew 安裝 sdk-man
  3. 為避免 flutter doctor –android-licenses 時出現以下錯誤 Exception in thread “main” java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema,所以用sdk-man 安裝 JAVA 8 的版本,像是以下版本: sdk list java 8.0.345-zulu
  4. 新開一個終端機視窗,或用 source <設定檔位置> 讓當前終端機設定重設
  5. 為避免出現「Unable to find bundled Java version」,請執行以下指令


Android Studio

  1. 下載最新版本的 Android Studio:https://developer.android.com/studio
  2. 在 Settings 中
    1. Plugins 安裝 Dart & Flutter
    2. Apperance & Behavior > System Settings > Android SDK 中
      1. SDK Tools 將 Hide Obsolete Packages 取消勾選
      2. 將 Android SDK Tools ( Obsolete ) 勾選並按下 OK,以避免出現 Android sdkmananger tool not found
  3. 在終端機中執行 flutter doctor --android-licenses 來簽署 Android 授權

XCode

  1. 用 homebrew 安裝 xcodes – xcode-install 的繼承者
  2. 安裝最新版本的 XCode
  3. 若沒有安裝 Xcode command line tool,可下 xcode-select --install 來觸發安裝
  4. 打開 XCode,確定在設定中的 Locations 有指定 Command Line Tools
  5. 安裝 CocoaPods。為了避免 OS 內建的 Ruby 和 Cocoapods 的版本不合,建議使用以下的指令安裝


程式碼


參考資料

1. Flutter Repo
2. Flutter – Update your path
3. How to Set $JAVA_HOME environment variable on macOS
4. SDKMAN! Homebrew Tap
5. Failed to install android-sdk: “java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema”
6. Unable to find bundled Java version on Flutter
7. Android SDK Tools(Obsolete)
8. The best command-line tool to install and switch between multiple versions of Xcode.
9. issue with cocoapods installation

按讚加入粉絲團

延伸閱讀