Articles of gradle

为什么gradle不会覆盖不同Android风格的Java类?

我有一个2种口味的Android应用程序:-flavor1 -flavor2 我的目录树是: /src/main /src/flavor1 /src/flavor2 main具有默认的源集。 flavor1和flavor2目录有自己的源集,gradle自动获取。 如果我将一个资源文件添加到flavor目录中,它会从main覆盖它,并且工作正常。 但是,如果我在flavor2中添加一个java类来覆盖“main”中的另一个(例如,在flavor2中需要不同的活动),它不会替换它,并且它表示我的项目中有一个重复的类。 我只是通过从“main”目录中删除类并将其添加到所有flavor文件夹来实现此function。 有没有办法像资源文件一样覆盖java类? 为什么会这样?

提供的Gradle依赖性是AAR而不是JAR

我有一个问题,我试图在我的项目中包含一个名为ParseLoginUI的库。 问题是它使用提供的标记而不是编译。 我相信提供的标记意味着项目需要提供这种依赖,以便库工作,而不是这个库编译库本身。 所以在我的Android库中,它会像这样引用Facebook SDK。 provided ‘com.facebook.android:facebook-android-sdk:4.0.1’ 然后在我的主要模块mobile / build.gradle中编译Facebook sdks就像这样。 compile ‘com.facebook.android:facebook-android-sdk:4.0.1’ 我一直在关注安装此库的指南,这就是您的意图。 这是我得到的警告,它阻止我从ParseLoginUI/build.gradle文件(提供它的那个)抛出的编译。 Warning:Project ParseLoginUI: provided dependencies can only be jars. com.facebook.android:facebook-android-sdk:aar:4.0.1 is an Android Library. 该库的文档有一个修复: 如果您使用的是gradle 1.1.0或更高版本,则可能会遇到“警告:Project ParseLoginUI:提供的依赖项只能是jar.com.facebook.android:facebook-android-sdk:aar:4.0.1是Android库”。 这是一个开放的android gradle构建工具问题。 目前workround使用的是gradle 1.0.0。 很公平,但我不想降级我的gradle(目前正在运行v1.2.3)只是为了解决这个问题。 必须有一种方法绕过这个或更好的方式。 我的问题 如何在库模块和主模块中包含Facebook SDK?

条目中的空值:otherfileoutputs = null

我在gradle构建中遇到以下错误。 null value in entry: otherfileoutputs=null 干净的构建不起作用:/我该如何解决这个问题? 注意:我的explorer.exe偶尔会崩溃。

找不到Gradle DSL方法:’has()’

在android studio的最新更新之后,使用classpath’com.android.tools.build:gradle:2.3.0-beta1’,我在gradle sync上收到以下错误。 错误:未findGradle DSL方法:’has()’ 有任何想法吗 更新其casused由android volley,完整错误: 错误:FAILURE:构建因exception而失败。 其中:脚本’D:\ APPS-MOBI ** \ Android \ volley \ bintray.gradle’行:64 出了什么问题:评估脚本时出现问题。 无法在org.gradle.api.Projecttypes的项目’:volley’上find方法has()for arguments [release]。 尝试:使用–stacktrace选项运行以获取堆栈跟踪。 使用–info或–debug选项运行以获取更多日志输出。

使用gradle编译我的Android应用程序时的OutOfMemoryError

我正在尝试通过gradle构建我的应用程序,我在运行./gradlew build后遇到此问题: :myApp:compileDebug The system is out of resources. Consult the following stack trace for details. java.lang.OutOfMemoryError: Java heap space at com.sun.tools.javac.util.Position$LineMapImpl.build(Position.java:139) at com.sun.tools.javac.util.Position.makeLineMap(Position.java:63) at com.sun.tools.javadoc.DocCommentScanner.getLineMap(DocCommentScanner.java:438) at com.sun.tools.javac.main.JavaCompiler.parse(JavaCompiler.java:512) at com.sun.tools.javac.main.JavaCompiler.parse(JavaCompiler.java:550) at com.sun.tools.javac.main.JavaCompiler.parseFiles(JavaCompiler.java:804) at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:727) at com.sun.tools.javac.main.Main.compile(Main.java:353) at com.sun.tools.javac.api.JavacTaskImpl.call(JavacTaskImpl.java:115) at org.gradle.api.internal.tasks.compile.jdk6.Jdk6JavaCompiler.execute(Jdk6JavaCompiler.java:40) at org.gradle.api.internal.tasks.compile.jdk6.Jdk6JavaCompiler.execute(Jdk6JavaCompiler.java:33) at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.delegateAndHandleErrors(NormalizingJavaCompiler.java:95) at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.execute(NormalizingJavaCompiler.java:48) at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.execute(NormalizingJavaCompiler.java:34) at org.gradle.api.internal.tasks.compile.DelegatingJavaCompiler.execute(DelegatingJavaCompiler.java:29) at org.gradle.api.internal.tasks.compile.DelegatingJavaCompiler.execute(DelegatingJavaCompiler.java:20) at org.gradle.api.internal.tasks.compile.IncrementalJavaCompilerSupport.execute(IncrementalJavaCompilerSupport.java:33) at […]

Gradle错误:项目的多个变体:myModule在升级到新的Google Services后匹配使用者属性

编辑 :似乎是谷歌方面的一个错误。 错误报告: https : //issuetracker.google.com/issues/79235243 自谷歌发布新的更改()后,我不得不更新谷歌服务。 一旦我做了,我得到这个gradle错误: More than one variant of project :myModule matches the consumer attributes: – Configuration ‘:myModule:debugApiElements’ variant android-aidl: – Found artifactType ‘android-aidl’ but wasn’t required. – Required com.android.build.api.attributes.BuildTypeAttr ‘debug’ and found compatible value ‘debug’. – Found com.android.build.api.attributes.VariantAttr ‘debug’ but wasn’t required. – Required com.android.build.gradle.internal.dependency.AndroidTypeAttr ‘Aar’ and found compatible value […]

如何配置gradle“脱机”工作(使用缓存的依赖项)

我有一个命令行apk生成器,它使用相同的源代码编译了很多APK,因此这些应用程序具有相同的依赖关系。 在gradle文档中我可以看到: Gradle项目需要网络连接才能下载依赖项。 我知道可以将gradle配置为脱机工作,而不是下载为其他apks下载的相同依赖项。 如何激活此离线模式?

Facebook字符串没有默认翻译

我今天遇到这个错误,试图运行附有Facebook SDK的应用程序。 Warning:string ‘com_facebook_smart_login_confirmation_continue_as_f1gender’ has no default translation. Warning:string ‘com_facebook_loginview_log_out_action_f1gender’ has no default translation. Warning:string ‘com_facebook_loginview_log_in_button_continue_f1gender’ has no default translation. Warning:string ‘com_facebook_smart_login_confirmation_continue_as_m2gender’ has no default translation. Warning:string ‘com_facebook_loginview_log_out_button_m2gender’ has no default translation. Warning:string ‘com_facebook_loginview_log_out_action_m2gender’ has no default translation. Warning:string ‘com_facebook_share_button_text_m2gender’ has no default translation. Warning:string ‘com_facebook_loginview_logged_in_as_f1gender’ has no default translation. Warning:string ‘com_facebook_send_button_text_m2gender’ has no default […]

在intelliJ / Android Studio的Edit Configurations选项中设置模块?

我打开了我的Android项目。 但在运行之前,我必须编辑配置并选择模块。 但任何模块都会出现在“编辑配置”窗口中。 这是一个使用Gradle的项目。 编辑: 当我打开“编辑配置”窗口时,在底部显示以下消息:“错误:未指定模块” 我该怎么办?

如何为每个产品风格提供不同的启动器图标

我有一个由build.gradle文件定义的项目 buildscript { repositories { mavenCentral() } dependencies { classpath ‘com.android.tools.build:gradle:0.5.6’ } } apply plugin: ‘android’ dependencies { compile fileTree(dir: ‘libs’, include: ‘*.jar’) } android { compileSdkVersion 17 buildToolsVersion “17.0.0” sourceSets { main { manifest.srcFile ‘AndroidManifest.xml’ java.srcDirs = [‘src’] resources.srcDirs = [‘resources’] aidl.srcDirs = [‘src’] renderscript.srcDirs = [‘src’] res.srcDirs = [‘res’] assets.srcDirs = [‘assets’] } […]