首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

Android 導入 Gson 失敗?正確姿勢:放對地方、用對依賴

     編輯:程式設計疑難解答

常見錯誤現場

  • 從 GitHub 下載 gson-master.zip 解壓到項目同級目錄。
  • 代碼寫 Gson gson = new Gson(); 卻提示「cannot resolve symbol Gson」。
  • 項目 libs/ 下沒有 gson-x.x.x.jar。

根本原因

GitHub 源碼倉庫不包含預編譯 JAR,且 Android 專案不會自動編譯任意目錄下的 Java 源碼。必須將 .jar 或 .aar 放入 libs/ 目錄,或在 build.gradle 中聲明 Maven 依賴。

三種正確接入方式(推薦度遞減)

✅ 方式一:Gradle 依賴(標準、自動更新、傳遞依賴)

// build.gradle (Module: app)
dependencies {
    implementation 'com.google.code.gson:gson:2.10.1' // 查最新版去 mvnrepository.com
}

同步後自動下載 JAR 並加入編譯路徑。

✅ 方式二:手動放 JAR 到 libs/(離線/舊專案)

  1. 去 Maven Central 下載 gson-2.10.1.jar。
  2. 複製到 app/libs/gson-2.10.1.jar。
  3. 右鍵 JAR → Add As Library,或確認 build.gradle 有 implementation fileTree(dir: 'libs', include: ['*.jar'])。

⚠️ 方式三:作為 Module 導入源碼(極不推薦)

File → New → Import Module → 選擇 gson-master/gson 子目錄 → 修改其 build.gradle 加入 apply plugin: 'com.android.library' → 主 Module implementation project(':gson')。
缺點:污染項目結構、升級麻煩、易發生資源衝突。

驗證導入成功

import com.google.gson.Gson;
// ...
Gson gson = new Gson(); // 無紅線即成功
String json = gson.toJson(new User("Tom", 18));

避坑提醒

  • 不要把源碼目錄當庫用:Java/Kotlin 源碼必須經過編譯生成 .class/.jar 才能被引用。
  • 同步 Gradle 後仍報錯:嘗試 File → Invalidate Caches / Restart。
  • 混淆配置:發布版需加入 -keep class com.google.gson.** { *; }。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved