Articles of gradle

具有特定的Product Flavors依赖关系的Android库

我正在寻找类似的东西 apply plugin: 'android-library' dependencies { flavor1Compile files('utility.aar') } 一切都失败: 无法在根项目“SampleProject”上的参数[文件集合]中find方法flavor1Compile()。

Android Studio minSdkVersion和targetSdkVersion警告

在我有的Android项目中,我在build.gradle文件中有这个部分: android { compileSdkVersion 19 buildToolsVersion "19.0.3" defaultConfig { minSdkVersion 16 targetSdkVersion 19; } } 在“minSdkVersion”和“targetSdkVersion”属性中,有警告: 'minSdkVersion' cannot be applied to '(java.lang.Integer)' 'targetSdkVersion' cannot be applied to '(java.lang.Integer)` 这是一个错误,还是别的?

如何在build.gradle中包含多个存储库?

Android Studio不会让我build立这个。 它说com.mixpanel.blahblahblah没有find。 com.mixpanel.blahblahblah来自mavenCentral()我知道问题是因为它不承认mavenCentral(),因为它只承认其他回购。 我怎样才能包括这两个项目,并使这个项目工作? apply plugin: 'com.android.application' apply plugin: 'crashlytics' buildscript { repositories { maven { url 'http://download.crashlytics.com/maven' } } dependencies { classpath 'com.crashlytics.tools.gradle:crashlytics-gradle:1.+' } } repositories { maven { url 'http://download.crashlytics.com/maven' } mavenCentral() } android { compileSdkVersion 21 buildToolsVersion "21.1.2" defaultConfig { applicationId "co.dilmile.dilmile" minSdkVersion 9 targetSdkVersion 21 versionCode 1 versionName "1.0" } […]

什么是gradlew做

我有一个项目,这是一个日食项目。 现在我用gradle 2.2.1使用Android Studio。 我发现,当我使用Android Studio创build一个项目时,它会生成一个gradlew文件,它可能包含一些CLI函数。 但是当我把我的项目从eclipse转移到Android Studio时,我没有find我的gradlew文件。 所以,这里是我的问题:一个gradlew文件到底做了什么? 可以定制吗?

用resConfig强制Android风格的语言环境

我正在尝试使用Android构build系统中的resConfig和resConfigs。 Android Studio版本1.2.2 Gradle版本1.2.3 OSX 10.10.3 我与我的项目有这两个选项的问题,所以我开始与android studio新的空白项目。 我附加了我的build.gradle,我只在其中添加了resConfigs“en”,“fr” android { defaultConfig { … resConfigs "en", "fr" … } } 并定义了2个基本口味 productFlavors { fr { resConfig "fr" } en { resConfig "en" } } 然后我创build了2个strings.xml文件,并编译了hello_world的默认标签 /src/main/res/values/strings.xml(默认) /src/main/res/values-en/strings.xml /src/main/res/values-fr/strings.xml 有了这个,我希望在MyApplication / app / build / intermediates / res / en / debug中只能看到3个值文件夹,因为我在resConfigs中只定义了“en”和“fr” /值/ /值恩/ /值-FR / […]

基于Gradle中产品风味的包装选项

我使用打包选项来排除一些库。 是否有可能根据产品风味进行包装select? 例如 – android { productFlavors { flavorDimensions 'models' S2 { flavorDimension 'models' minSdkVersion 22 …. } S6 { flavorDimension 'models' minsdkversion 22 …. } } packagingOptions { exclude 'lib/armeabi/libs2.so' exclude 'lib/arm64-v8a/libs6.so } } 现在在上面的代码中,我只想排除在apk生成的s6味道中的'lib/armeabi/libs2.so' ,并且想要在为s2味道生成的apk中只排除'lib/arm64-v8a/libs6.so' 我们怎样才能做到这一点。

Gradle Artifactory插件 – 如何从项目中的多个模块发布工件?

我有一个项目,它有一个SharedCode (Java)模块,其次是一个依赖于SharedCode模块的Android (Android库)模块。 我想从SharedCode模块发布jar工件,并从Android模块发布aar工件。 我不知道如何build.gradle我的build.gradle文件,以便两个模块在artifactoryPublish任务运行时发布到Artifactory。 目前只有SharedCode模块将Artifact发布到Artifactory。 我的build.gradle文件如下。 请注意,我的build.gradle文件的maven-publish方面似乎是正确的,因为当我运行publishToMavenLocal任务时,我看到我的本地Maven文件夹(即'~/.m2/repository' )中这两个模块的工件。 首先,我的SharedCode模块中的build.gradle文件如下所示: apply plugin: 'java' apply plugin: 'maven-publish' apply plugin: 'com.jfrog.artifactory' group = "${projectGroupId}" version = "${projectVersionName}" dependencies { compile 'com.google.guava:guava:18.0' } publishing { publications { SharedCode(MavenPublication) { groupId "${projectGroupId}" artifactId 'SharedCode' version "${projectVersionName}" from components.java } } } artifactory { contextUrl = "${artifactory_url}" publish { repository […]

Gradle编译错误“没有方法的签名”

当我尝试从terminal运行./gradlew build.gradle时,出现以下错误: > No signature of method: org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.compile() is applicable for argument types: (org.gradle.api.internal.project.DefaultProject_Decorated) values: [project ':TestMobile'] Possible solutions: module(java.lang.Object) 我已经尝试在root build.gradle文件和子项目上应用java插件。 但仍然有同样的错误。 我有以下项目结构: ProjectRepos ->build.gradle ->settings.gradle ->TestMobile (Android plugin) ->build.gradle ->ThirdParty/SlidingMenu (Android library) ->build.gradle 顶级build.gradle包含: // Top-level build file where you can add configuration options common to all sub- projects/modules. buildscript { repositories { […]

在Gradle for Android应用程序中运行JUnittesting

我想在我的Android应用程序项目中运行简单的纯JUnittesting,同时使用Gradle在之后编写Activitytesting。 花了很长时间来configurationGradle并使其工作,但是,无论如何,现在我坚持试图让JUnittesting只是编译。 我检查了这个链接 ,但是当我运行gradle时,出现以下错误: DummyTest.java:3: error: package junit. framework does not exist import junit.framework.Assert; ^ \DummyTest.java:8: error: cannot find symbol Assert.assertEquals(5,3); ^ symbol: variable Assert location: class DummyTest 所以,junit没有find… 以下是我完整的gradle.build文件: buildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:0.6.+' } } apply plugin: 'android' repositories { mavenCentral() } dependencies { compile files('libs/joda-time-2.3.jar') compile files('libs/android-support-v4.jar') […]

gradle build Javadoc任务失败,'unknown tag:attr'

我试图从命令行使用gradle构buildandroid-autofittextview项目。 但是,每次出现以下错误都会失败: /Users/me/android-autofittextview/library/src/main/java/me/grantland/widget/AutofitHelper.java:384: error: unknown tag: attr * @attr ref android.R.styleable#TextView_textSize 这个错误在各种文件中重复了十几次。 这发生在:library:androidJavadocs 我试图用这种方法来closures它,但是当我试图把它作为一个图书馆项目的时候,我得到了一个“未知任务”的例外。 如何使用@attr标志正在使用时,如何使用Gradle正确构buildjavadoc?