久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

從 gradle 構建 Android 項目時找不到參數的方法 a

Could not find method android() for arguments when building Android project from gradle(從 gradle 構建 Android 項目時找不到參數的方法 android())
本文介紹了從 gradle 構建 Android 項目時找不到參數的方法 android()的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

我有一個基于 gradle 的 Android 項目,其中包含 4 個子模塊 - 兩個庫和兩個應用程序.我試圖通過將一些共享代碼/配置移動到頂級 build.gradle 文件并使用 subprojects {} 使該代碼可供每個子模塊使用,從而簡化每個子模塊的 build.gradle 文件子模塊.

I have an gradle-based Android project with 4 submodules - two libraries and two applications. I was trying to simplify the build.gradle files of each submodule by moving some of of the shared code/configurations to the top level build.gradle file and use subprojects {} to make that code available to each submodule.

文件系統結構如下:

Root
 |- App1/
 |- App2/
 |- Lib1/
 |- Lib2/
 |- build.gradle
 |- settings.gradle

問題是,如果我將 android {} 部分添加到子項目中,那么 gradle 任務就會失敗.例如,這是我的頂級 build.gradle 文件:

The problem is that if I add an android {} section to the subprojects then gradle tasks fail. For example, this is my top-level build.gradle file:

subprojects { project ->
  android {
    buildToolsVersion "20.0.0"
  }
}

運行 gradle 會返回:

Running gradle returns this:

出了什么問題:評估根項目android"時出現問題.在根項目android"上找不到參數 [build_7dngpra6ldok366maq0on77r7e$_run_closure3_closure5@43d95624] 的方法 android().

What went wrong: A problem occurred evaluating root project 'android'. Could not find method android() for arguments [build_7dngpra6ldok366maq0on77r7e$_run_closure3_closure5@43d95624] on root project 'android'.

我搜索了類似的帖子,有些人建議將 apply plugin: 'android' 行添加到每個子項目中,以公開 gradle 缺少的 android() 方法正在抱怨.但是,該解決方案對我不起作用,因為它會有效地將該行添加到庫項目中,這需要 apply plugin: 'android-library' 代替.

I searched for similar posts and some people suggest adding the line apply plugin: 'android' to each subproject in order to expose the missing android() method that gradle is complaining about. However, that solution doesn't work for me because it would effectively add that line to library project, which require apply plugin: 'android-library' instead.

當您在同一個項目中有應用程序和庫時,有沒有辦法在 subprojects {} 中使用 android {}?

Is there a way to use android {} inside of subprojects {} when you have apps and libraries in the same project?

推薦答案

這實際上是對 android-gradle 插件結構方式的限制,android 工具網站.

This is actually a limitation on the way that the android-gradle plugin is structured and there is a workaround documented at the android tools website.

如果您有很多 Android 模塊,您可能希望避免在所有模塊中手動設置相同的值.因為您可能混合了 android 和 android-library 項目,所以您不能通過子項目閉包應用這些插件.

If you have a lot of Android modules, you may want to avoid manually setting the same values in all of them. Because you probably have a mix of android and android-library project you can't apply these plugins through a subprojects closure.

建議的解決方案是:

...在根項目的 build.gradle 中:

...in the root project's build.gradle:

ext {
  compileSdkVersion = 19
  buildToolsVersion = "19.0.1"
}

在所有安卓模塊中:

android {
  compileSdkVersion rootProject.ext.compileSdkVersion
  buildToolsVersion rootProject.ext.buildToolsVersion
}

...

我注意到的一個想法是,這不適用于舊版本的 gradle(我嘗試使用 1.10 并遇到錯誤).不過,對于 Gradle 2.1,這似乎可以正常工作.

One think I noticed was that this doesn't work on older versions of gradle (I was trying with 1.10 and got an error). With Gradle 2.1 this seems to work correctly though.

這篇關于從 gradle 構建 Android 項目時找不到參數的方法 android()的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

IncompatibleClassChangeError after updating to Android Build Tools 25.1.6 GCM / FCM(更新到 Android Build Tools 25.1.6 GCM/FCM 后出現 IncompatibleClassChangeError)
How to get current flavor in gradle(如何在 gradle 中獲取當前風味)
How to fix quot;unexpected element lt;queriesgt; found in lt;manifestgt;quot; error?(如何修復“意外元素lt;查詢gt;在“清單中找到錯誤?)
Multi flavor app based on multi flavor library in Android Gradle(基于 Android Gradle 中多風味庫的多風味應用)
Android dependency has different version for the compile and runtime(Android 依賴在編譯和運行時有不同的版本)
Transitive dependencies for local aar library(本地 aar 庫的傳遞依賴)
主站蜘蛛池模板: 一本色道精品久久一区二区三区 | 在线视频一区二区三区 | 日本三级电影在线观看视频 | 91看片网 | 国产一区二区在线观看视频 | 91综合在线观看 | 国产精彩视频一区 | 91精品国产一区二区三区蜜臀 | 亚洲精品一级 | 欧美亚洲另类丝袜综合网动图 | 日本高清视频网站 | 久久精品免费 | 2021天天干夜夜爽 | 国产福利在线视频 | 国产乱精品一区二区三区 | 国产欧美一区二区三区在线看蜜臀 | 欧美成人h版在线观看 | 亚洲一区二区三区四区五区午夜 | 精品国产乱码一区二区三 | 成人国产精品色哟哟 | 日韩色视频 | 欧美一级片在线观看 | 青青草在线视频免费观看 | 日韩欧美在线免费观看 | 欧美精品在线一区二区三区 | 日韩中文一区二区三区 | 成人深夜福利 | 国产日韩欧美一区二区 | 国产欧美精品区一区二区三区 | 国产高清亚洲 | 日本成年免费网站 | 龙珠z国语版在线观看 | 精品久久久精品 | 亚洲精品大全 | 国产精品麻| 国产福利在线播放 | 黑人精品欧美一区二区蜜桃 | 日韩在线视频网址 | 农村真人裸体丰满少妇毛片 | 水蜜桃久久夜色精品一区 | 久久久国产亚洲精品 |