Articles of gradle

如何在gradle中获得当前的味道

我的应用程序有两种产品口味: productFlavors { europe { buildConfigField(“Boolean”, “BEACON_ENABLED”, “false”) } usa { buildConfigField(“Boolean”, “BEACON_ENABLED”, “true”) } } 现在我想在任务中获取当前的flavor名称(我在Android Studio中选择的名称)以更改路径: task copyJar(type: Copy) { from(‘build/intermediates/bundles/’ + FLAVOR_NAME + ‘/release/’) 我怎样才能在Gradle中获得FLAVOR_NAME? 谢谢

Android Gradle库依赖于使用Nexus的库依赖项

我正在将我的项目转换为使用Gradle和内部SonaType Nexus来托管我的依赖项。 我的核心项目依赖于库项目A和库项目A依赖于库项目B. 我的问题是,只要我将LibA添加到我的主项目中,我就会收到此错误:“模块版本com.example:LibA:1.1依赖于库但不是库本身” 使用相同的构建脚本添加带有jar依赖项的库项目没有问题。 我见过人们用LOCAL(在项目中)成功地做了这个android库,但没有人用maven repos做这件事。 这是gradle中的错误还是我错误配置了库构建? 核心项目建设 buildscript { repositories { mavenCentral() } dependencies { classpath ‘com.android.tools.build:gradle:0.6.+’ } } apply plugin: ‘android’ repositories { maven { url “http://localhost:8081/nexus/content/repositories/releases/” } maven { url “http://localhost:8081/nexus/content/repositories/central/” } } android { compileSdkVersion 19 buildToolsVersion “19.0.0” defaultConfig { minSdkVersion 14 targetSdkVersion 19 } } dependencies { compile ‘com.android.support:support-v4:+’ […]

运行react-native run-android时出错

A problem occurred configuring project ‘:app’. > Could not resolve all dependencies for configuration ‘:app:_debugApk’. > A problem occurred configuring project ‘:react-native-fbsdk’. > Could not resolve all dependencies for configuration ‘:react-native-fbsdk:_debugPublishCopy’. > Could not find com.android.support:appcompat-v7:27.0.1. Searched in the following locations: file:/home/ubuntu/Android/Sdk/extras/android/m2repository/com/android/support/appcompat-v7/27.0.1/appcompat-v7-27.0.1.pom file:/home/ubuntu/Android/Sdk/extras/android/m2repository/com/android/support/appcompat-v7/27.0.1/appcompat-v7-27.0.1.jar file:/home/ubuntu/git/mstore-pro/android/sdk-manager/com/android/support/appcompat-v7/27.0.1/appcompat-v7-27.0.1.jar Required by: beostore:react-native-fbsdk:unspecified > Could not find com.android.support:appcompat-v7:27.0.1. Searched in the […]

如何设置Android Studio,以便在离线时进行编译(从互联网断开)

我今天在androidstudio工作,我的构build开始失败。 令我惊讶的是,我已经失去了我的互联网连接,不能再build立我的代码。 build.gradle文件包含以下内容: buildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:0.6.3' } tasks.withType(Compile) { options.encoding = "UTF-8" } } apply plugin: 'android-library' dependencies { compile files('libs/android-support-v4.jar') } … 所以…我如何重新configuration​​我的开发环境,改变我的build.gradle,并做任何其他必要的,以使android开发脱机。 注意:编辑问题是为了从存储库中删除mavenLocal(),因为它自己添加了试图解决这个问题

Android库JAR是否依赖于Android库AAR?

我有一个Android库项目FooLib 。 FooLib引用了像Android Context的东西,但不需要任何资源文件( res/东西),所以我现在将它打包为一个JAR,供我的应用程序使用。 我现在想让FooLib依赖于BarLib ,但BarLib 确实使用资源,所以我不能将BarLib为JAR。 相反,它被打包成一个AAR。 我有可能让FooLib依赖于BarLib但继续将FooLib为JAR? 或者,在FooLib中有一个AAR依赖,迫使我把它变成一个AAR呢?

我可以一次build立所有我的gradlebuild立风味吗?

我有几个构build口味的应用程序。 我想一次构build所有不同风格的apks,并在我的/输出文件夹中find它们。 我不想select每种口味,并单独构build它。 我怎样才能做到这一点?

PMD,checkstyle和findbugs android安装程序

我如何使用gradle的最新版本为Android项目设置PMD,Findbugs和Checkstyle静态代码分析工具? 我尝试了几件事,但我没有设法让他们工作。 谢谢

在Android Studio中抑制Gradle警告?

我在Android Studio中收到以下警告: Warning:Dependency org.json:json:20140107 is ignored for release as it may be conflicting with the internal version provided by Android. In case of problem, please repackage with jarjar to change the class packages 我无法删除依赖项,因为我在一个依赖项目中使用它。 我怎样才能在Android Studio中抑制上面的Gradle警告?

Kotlin Gradle问题

我创build了一个用Kotlin语言编写的项目的Jar。 Jar包含以下文件夹: com jet kotlin meta-inf okio org 然后我创build了一个android项目,并添加Kotlin和Jar作为依赖项。 当我尝试执行hello world app时,会抛出以下exception。 com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command '/usr/lib/jvm/java-7-openjdk-amd64/bin/java'' finished with non-zero exit value 1 我的应用程序构buildgradle文件是 apply plugin: 'com.android.application' apply plugin: 'kotlin-android' android { compileSdkVersion 22 buildToolsVersion "22.0.1" defaultConfig { applicationId "abc.xyz.kotlin" minSdkVersion 15 targetSdkVersion 22 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false […]

将项目迁移到新的实验性gradle插件

我尝试将我的Android项目迁移到新的实验gradle插件。 我按照这个页面上的指示。 我对所需文件进行了更改,但是当我尝试使用Gradle文件同步项目时出现错误。 错误:无法加载类“com.android.build.gradle.managed.ProductFlavor_Impl”。 这种意外错误的可能原因包括: Gradle的依赖关系caching可能已损坏(有时发生在networking连接超时之后)。重新下载依赖项并同步项目(需要networking) Gradle构build过程(守护进程)的状态可能已损坏。 停止所有的Gradle守护进程可能会解决这个问题。 停止Gradle构build过程(需要重新启动) 您的项目可能使用与项目中的其他插件或项目请求的Gradle版本不兼容的第三方插件。 在损坏的Gradle进程的情况下,您也可以尝试closuresIDE,然后杀死所有的Java进程。 build.gradle在我的app文件夹是非常相似的,如下所示: apply plugin: 'com.android.model.application' apply plugin: 'maven' repositories { maven { url = getBaseRepository() credentials { username = NEXUS_USERNAME password = NEXUS_PASSWORD } } mavenCentral() } def int CACHE_LIMIT = CACHE_CHANGING_MODULES_FOR_SECONDS.toInteger() configurations.all { resolutionStrategy.cacheChangingModulesFor CACHE_LIMIT, 'seconds' } model { android { compileSdkVersion = 23 […]