」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 為什麼我的 React Native Android 建置在升級到版本 0.71.0-rc.0 後失敗?

為什麼我的 React Native Android 建置在升級到版本 0.71.0-rc.0 後失敗?

發佈於2024-12-26
瀏覽:273

Why are my React Native Android builds failing after upgrading to version 0.71.0-rc.0?

由於React Native 版本0.71.0-rc.0,React Native Android 建置失敗

問題:

最近,儘管沒有進行任何程式碼更改,但用戶在建立React Native Android 應用程式時遇到了各種錯誤。這些錯誤的表現可能有所不同,但它們通常涉及安裝失敗或未解決的依賴關係問題。

分析:

原因:

這些建置失敗的根本原因在於最近發布的React Native 版本0.71.0 -rc.0。此更新引入了與 Android 建置系統中現有配置衝突的依賴項。

解決方案:

方法1:

buildscript {
    // ...
}

allprojects {
    repositories {
       exclusiveContent {
           filter {
               includeGroup "com.facebook.react"
           }
           forRepository {
               maven {
                   url "$rootDir/../node_modules/react-native/android"
               }
           }
       }
        // ...
    }
}
方法1:

修改Android build.gradle 檔案以強制使用node_modules 目錄中的本地React Native 函式庫。加入以下程式碼:

buildscript { // ... } 所有項目{ 儲存庫{ 獨家內容{ 篩選 { includeGroup“com.facebook.react” } forRepository { 行家{ url“$rootDir/../node_modules/react-native/android” } } } // ... } }

buildscript {
    // ...
}

allprojects {
    repositories {
       exclusiveContent {
           filter {
               includeGroup "com.facebook.react"
           }
           forRepository {
               maven {
                   url "$rootDir/../node_modules/react-native/android"
               }
           }
       }
        // ...
    }
}
方法二:

方法二:

如果你的gradle檔案不支援exclusiveContent規則,請新增以下程式碼:

def REACT_NATIVE_VERSION = new File (

.execute( null , rootDir).text.trim()) 建置腳本{ // ... } 所有項目{ 配置.all { 解決策略{ 強制“com.facebook.react:react-native:”REACT_NATIVE_VERSION } } // ... }

Why are my React Native Android builds failing after upgrading to version 0.71.0-rc.0?
附加說明:

在應用這些修復之前,建議還原您最近對程式碼所做的任何變更。

參考:

詳細解釋和修復請參考官方關於Android構建失敗的更新: https://github.com/facebook/react-native/issues/ 35210

最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3