Articles of gradle

Android Studio使我的testing模块依赖于应用程序模块

我想在Android Studio中使我的testing模块依赖于应用程序模块,但是无法做到这一点,有错误 Error:Dependency AndroidApp:app:unspecified on project TestsRobotium resolves to an APK archive which is not supported as a compilation dependency. File: D:\android\MEWE\AndroidApp\app\build\apk\MeWe.apk 在我的test.gradle中,我在依赖标签中添加了提供的项目(':app')(它是由Android studio自动完成的) 我将如何解决这个问题? 我需要依赖于我的主应用程序的src,res文件夹,并需要知道R文件

Gradle:只parsing所需变体的依赖关系

我有一个三种口味的testing应用程序: dev:在开发过程中使用库的本地副本 qa:在QA期间使用快照 rc:使用预发布版本进行候选版本testing。 dependencies { devCompile project(':library') qaCompile 'com.example:library:1.0.0-SNAPSHOT@aar' rcCompile 'com.example:library:1.0.0@aar' } 我运行Gradle,期望它能够完成构build我所需的最小工作量: ./gradlew :test-app:connectedAndroidTestDevDebug 然而,构build失败,因为它正在试图解决所有构build口味的依赖性,而不仅仅是我正在构build的。 失败:生成失败,出现exception。 * 什么地方出了错: configuration项目“test-app”时出现问题。 无法parsingconfiguration的所有依赖关系:test-app:_qaDebugCompile。 找不到com.example:library1.0.0-SNAPSHOT。 Searched in the following locations: https://repo1.maven.org/maven2/com/example/library/1.0.0-SNAPSHOT/maven-metadata.xml https://repo1.maven.org/maven2/com/example/library/1.0.0-SNAPSHOT/library-1.0.0-SNAPSHOT.pom https://repo1.maven.org/maven2/com/example/library/1.0.0-SNAPSHOT/library-1.0.0-SNAPSHOT.aar http://oss.sonatype.org/content/repositories/snapshots/com/example/library/1.0.0-SNAPSHOT/maven-metadata.xml http://oss.sonatype.org/content/repositories/snapshots/com/example/library/1.0.0-SNAPSHOT/library-1.0.0-SNAPSHOT.pom http://oss.sonatype.org/content/repositories/snapshots/com/example/library/1.0.0-SNAPSHOT/library-1.0.0-SNAPSHOT.aar file:/opt/android-sdk-macosx/extras/android/m2repository/com/example/library/1.0.0-SNAPSHOT/maven-metadata.xml file:/opt/android-sdk-macosx/extras/android/m2repository/com/example/library/1.0.0-SNAPSHOT/library-1.0.0-SNAPSHOT.pom file:/opt/android-sdk-macosx/extras/android/m2repository/com/example/library/1.0.0-SNAPSHOT/library-1.0.0-SNAPSHOT.aar file:/opt/android-sdk-macosx/extras/google/m2repository/com/example/library/1.0.0-SNAPSHOT/maven-metadata.xml file:/opt/android-sdk-macosx/extras/google/m2repository/com/example/library/1.0.0-SNAPSHOT/library-1.0.0-SNAPSHOT.pom file:/opt/android-sdk-macosx/extras/google/m2repository/com/example/library/1.0.0-SNAPSHOT/library-1.0.0-SNAPSHOT.aar Required by: project-name:test-app:unspecified qa风味试图解决的SNAPSHOT目前还不存在,这应该是好的,因为我并不是在尝试构buildqa风味。 如果该SNAPSHOT构build存在,那么一切工作正常。 问题: 为什么所有的构build口味的依赖关系解决? 我怎样才能做到只有一种味道而不会遇到这个问题呢? 有没有更好的方法来做到这一点,将更多的“格雷德利”?

Android Studio无法parsing导入的AAR模块中的符号

在类似的问题的所有答案都谈论manunally编辑gradle文件。 但我已经使用Android Studio来导入AAR文件,并检查了build.gradle文件,它们都是正确的。 我的问题是这样的: 我导入了ShowCaseView v5.0.0 AAR,但是当我尝试导入Tutorial.java文件中的类(可以看到红色)时,Android Studio无法识别这些类。 Android Studio只能识别的是com.github.amlcurran.showcaseview.R 。 我也尝试清理和重build项目,closures并重新打开Android Studio,但没有帮助。 PS请忽略丢失的XML文件,因为在我将它们复制到项目之前。 Gradle文件 ShowCaseView-5.0.0> build.gradle: configurations.create("default") artifacts.add("default", file('ShowCaseView-5.0.0.aar')) 我的应用程序的build.gradle: apply plugin: 'com.android.application' android { compileSdkVersion 21 buildToolsVersion "21.1.2" defaultConfig { applicationId "com.giraffeweather" minSdkVersion 19 targetSdkVersion 21 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } […]

无法为Google应用邀请生成项目

我正在尝试这个Google应用程序邀请的东西,但我不能得到它的工作。 我遵循https://developers.google.com/app-invites/android/guides/appbuild议的步骤,但我很快就遇到了没有find“com.google.gms:google-services:1.0”等问题我跟随错误:无法findcom.google.gms:谷歌服务:1.0。 当在android工作室 build.gradle 添加谷歌服务插件和gradle继续build立,但后来我填写了这个错误: 我遵循这个答案: Android Studio:未能完成gradle执行,原因是空的 ,甚至尝试使用选项-Xmx512m,但问题仍然存在…任何有类似的问题,试图build立应用程序邀请邀请在他们的应用程序,不能甚至build立这个项目? 编辑:我没有设法解决这个问题,但我设法让应用程序邀请工作。 我不需要从App Invites谷歌指南中执行这些步骤: 将依赖关系添加到您的项目的顶级build.gradle:classpath'com.google.gms:google-services:1.3.0-beta1'将该插件添加到您的应用程序级别build.gradle:apply plugin:'com.google .gms.google的服务。 就像这样,gradle不会失败,因为我只需要添加谷歌播放服务依赖到应用程序级build.gradle文件。

Android Studio:Gradle Build运行3分钟

我有一个简单的应用程序,每次我点击“运行”它需要超过3分钟的时间来完成构build和加载应用程序。 它发生在模拟器和我的android手机。 在将此帖标记为类似post之前,请听我说:自从过去10天以来,我一直在试图解决此问题。 我已经经历了20多个堆栈溢出类似的问题(像这样)和几十个关于谷歌的文章,我已经尝试了他们build议的每个解决scheme,但似乎没有任何工作。 这是我迄今为止所尝试的: 添加了org.gradle.parallel=true和org.gradle.daemon=true to gradle.properties 增加 – 平行和 – 离线命令行选项设置 在设置中启用“脱机工作” 启用/禁用“即时运行” – 没有任何区别 我已经分配了很多内存: org.gradle.jvmargs=-Xmx4096m -XX:MaxPermSize=1024m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF- 8 我完全禁用了Windows Defender 我使用的是Gradle(2.10)的最新版本和2.1.1的最新版本的Android Studio,即使尝试了所有这些,仍然需要3分钟以上,这让人非常沮丧。 当应用程序运行几分钟,我已经注意到:app:processDebugResources在gradle控制台中的:app:processDebugResources 。 所以也许这可能会导致减速,我不知道。 此外,我有一个XML文件,我parsing,该XML文件中有大约70,000行。 这是否会造成任何问题? 可以是Windows 8吗? 请提供有关如何解决此问题的build议。 谢谢 :)

用Gradle导出ADT错误

我试图导出我的Android项目从ADT使用Gradle,以便我可以导入到Android Studio。 我select生成Gradle构build文件,然后在Export菜单中select我的项目,但是当我点击Finish时,会闪烁创buildGradle构build进度栏一毫秒,然后停留在Export菜单屏幕上。 在错误日志中创build一个新的错误:消息是空白的,插件是com.android.ide.eclipse.adt 这是完整的错误日志输出: !ENTRY com.android.ide.eclipse.adt 4 0 2013-05-20 16:16:45.168 !MESSAGE !STACK 0 java.lang.reflect.InvocationTargetException at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:477) at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:372) at org.eclipse.jface.wizard.WizardDialog.run(WizardDialog.java:1028) at com.android.ide.eclipse.adt.internal.wizards.exportgradle.GradleExportPage.generateBuildfiles(GradleExportPage.java:293) at com.android.ide.eclipse.adt.internal.wizards.exportgradle.GradleExportWizard.performFinish(GradleExportWizard.java:32) at org.eclipse.jface.wizard.WizardDialog.finishPressed(WizardDialog.java:827) at org.eclipse.jface.wizard.WizardDialog.buttonPressed(WizardDialog.java:432) at org.eclipse.jface.dialogs.Dialog$2.widgetSelected(Dialog.java:624) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:248) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4169) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3758) at org.eclipse.jface.window.Window.runEventLoop(Window.java:825) at org.eclipse.jface.window.Window.open(Window.java:801) at org.eclipse.ui.internal.handlers.WizardHandler$Export.executeHandler(WizardHandler.java:103) at org.eclipse.ui.internal.handlers.WizardHandler.execute(WizardHandler.java:279) at org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:293) at org.eclipse.core.commands.Command.executeWithChecks(Command.java:499) at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:508) […]

Gradle和Android:带有多个Maven工件发布的pomconfiguration

使用Gradle(v 1.7)作为构build工具处理Android库时,我使用了maven插件,并将任务uploadArchivesconfiguration为将发行版和debugging版本的lib发布到本地maven存储库。 下面的代码工作正常: // […] apply plugin: 'android-library' // […] nothing unusual /* * Define name of the apk output file (build/apk/<outputFile>) */ android.libraryVariants.all { variant -> def outputName = "MyModule-${android.defaultConfig.versionName}-${variant.baseName}.aar" variant.outputFile = new File("$buildDir/libs", outputName) } /* * Publish to maven local repo (older style maven plugin) * Used while android plugin is not […]

从eclipse + SVN迁移到Android Studio

我们目前使用Eclipse进行Android开发,我们的项目同步到SVN。 当前结构: Android应用程序1 Android应用程序2 Android库1 Android库2 因此,这是SVN的独立项目。 细节 : Android Android应用1需要库1 Android Android应用2需要库1和2等… 在此之前,这是很正常的。 我们面临的挑战是在保证与eclipse兼容的同时,转移到Android Studio / IntelliJ中的项目结构。 所以在目前的SVN结构中没有什么改变。 我只是不能处理如何使用IntelliJ结构(项目,模块,…)。 此外,似乎有一个Android Studio的问题,这是不可能的,我的IMPORT模块,我可以创build一个,但不能导入一个… … – 这还不是全部,在“打开模块设置”中,只有Android SDK出现在每个项目中。 所以我无法处理模块… 我试图用Subversion的一个checkout逐个导入每一个项目,但是如何将项目链接到对方呢? 我最终得到了一个和日食一样的项目结构,我猜这样做不好。 在Android Studio中,一个模块依赖于一个项目(对吧?),但是我不想要一个依赖任何项目的库。 请不要犹豫,询问任何信息。 我确信我没有说任何事情,因为我从现在开始尝试了两天,所以我尝试了很多很多的东西……我无法得到它。 怎么了 ? 非常感谢 最好的祝福

Roboelectric和Android Studio

我一直试图做几天,没有结果。 我需要在Android Studio(0.8.9,最新版本)中设置Robolectric。 我跟着不同的教程Android单元和集成testing , unit testingRoboelectric安装 , Roboelectric Android机器人Gradle应用程序 , 如何运行Roboelectric JUnittesting,但总是有一些错误。 所以我创build了专门用于testing的模块: Kedzoh(Project)build.gradle : // Top-level build file where you can add configuration options common to all sub- projects/modules. buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:0.12.+' classpath 'org.robolectric:robolectric-gradle-plugin:0.12.+' } } allprojects { repositories { jcenter() } } 应用程序build.gradle: apply plugin: […]

如何在另一个模块的androidTest目录中使用代码

我在我的AndroidStudio项目中添加两个模块: app-base | |—-src |____androidTest |________MyTestBase.java app | |—-src |____androidTest |________MyTest.java 一些常见的testing类在app-base的androidTest中定义,并在app'androidTest中使用。 我曾尝试在应用程序的build.gradle中添加以下代码: evaluationDependsOn(':app-base') compile project(':app-base') androidTestCompile project(':app-base') 我在settings.gradle中包含了app-base和app, gradlew项目的输出是: Root project 'MyProject' +— Project ':app-base' +— Project ':app' 通过这种方式没有编译错误,但是当我在IDE中运行MyTest,它说类MyTestBase没有find。 你知道什么是错的吗? 任何想法都表示赞赏。 谢谢。