Android-Studio从0.1.9升级到0.2.0,现在造成了gradle build错误
我现在的项目是用Gradle构build的,因为我在创buildAndroid Studio之后(大约一个月前)创build了它。 [我安装了一些较早的更新到Android-Studio,并没有问题。]
但是,今天,在我将Android-Studio的最新更新升级到“7.11”版本(从0.1.9版本到0.2.0版本)之后,我的项目开始抱怨Gradle现在需要至less为0.5.0。 (我的项目是要求Gradle 0.4,这个新的Studio升级标记了我的Gradle构build,并表示现在需要这个新的更高的Gradle最小值。
所以,我不清楚的是:我一直假设Gradle是Android Studio的一部分(捆绑在一起)。
我现在需要得到一个更新的Gradle,作为一个单独的产品/更新?
我很困惑!!!
编辑:(这是在Windows 7下发生的)。
解决scheme,我没有重新安装或创build一个新的项目:
步骤1:将 build.gradle
行build.gradle
:
dependencies { classpath 'com.android.tools.build:gradle:0.4' }
至
dependencies { classpath 'com.android.tools.build:gradle:0.5.+' }
注意:对于更新版本的gradle,您可能需要将其更改为0.6.+
。
步骤2:在<YourProject>.iml
文件中,删除整个<component name="FacetManager">[...]</component>
标签。
步骤3 (可能不需要) :在Android SDKpipe理器中,安装(如果尚未安装的话) Android Support Repository
在Extras下。
信息在这里find
基本上,如果你在这个链接 0.2的问题,你可能会得到你自己的修复,我有同样的问题0.2
好的,我终于解决了这个问题,完全卸载了Android-Studio,然后从头开始安装最新版本(0.2.0)。
编辑:我也不得不使用Android SDK的经理,并安装在“额外”部分称为Android支持库(如其他地方所述)的组件。
注意:这不能修复我现有的旧项目…那个仍然不会build立,如上所述。
但是,它解决了现在至less能够创build新项目的问题,使用“Gradle”来构build好。 (所以,基本上,我用一个新的名字从头开始重新创build了我的proj,并将所有代码和项目xml文件等从旧项目中复制到新创build的项目中。
[旁白:我有一个想法,谷歌! 为什么不提及使用0.1.9和0.2.0等数字的Android-Studio版本,但是当用户点击“关于”菜单项或在其他地方search他们正在运行的版本时,可能会使用像“七一一build立”或者又名,一些编号与6或8位数的编号,让他们想知道他们实际上有什么版本! 这会让开发商猜测……真的会把麦子从糠sort中分类出来,等等)
例如,我最初安装了一个名为:android-studio-bundle-130.687321-windows.exe的工具包
今天,我得到了“0.2.0”套件???,它有一个名称,如:android-studio-bundle-130.737825-windows.exe
是的,这个版本系统就像泥浆一样清晰。
为什么要打扰版本#的错觉,当你不使用它们?
Gradle应该已经更新了,你只需要让你以前的项目知道gradle已经被更新了。
资源
编辑你的build.gradle文件来显示这个:
dependencies { classpath 'com.android.tools.build:gradle:0.5.+' }
这只适用于使用旧版Android Studio创build的项目。 您创build的新项目将默认具有该项目。
现在你可以用这个方法使用最后的1.0.0-rc1:
classpath 'com.android.tools.build:gradle:1.0.0-rc1'
这需要Gradle 2.0,如果你没有它,Android Studio会要求你下载它
如果你得到这个错误
Gradle: FAILURE: Could not determine which tasks to execute. * What went wrong: Task 'assemble' not found in root project 'MyProject'. * Try: Run gradle tasks to get a list of available tasks.
您需要编辑您的Projects .iml文件。 不是src下的那个。 那个像myappProject.iml的那个'删除整个组件名称= facetmanager
<module external.system.id="GRADLE" type="JAVA_MODULE" version="4"> <component name="FacetManager"> ...remove this element and everything inside such as <facet> elements... </component> <component name="NewModuleRootManager" inherit-compiler-output="true"> ...keep this part... </component
对于今天有这个问题的人(例如从2.8.0切换到2.10.0),移动到文件gradle-wrapper.properties并设置您需要的值为distributionUrl。 distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip
我将2.8.0更改为2.10.0,不要忘记同步后