Tag: gradle

不同的android风格的通用代码

我正在构build4种不同风格的Android应用程序。 我有一个Customization.java类,其中3个是相同的,1个是不同的。 由于我不能在主文件夹和flavor文件夹中放置相同的类,所以我现在必须为这三种口味保持3个完全相同的类的副本。 有没有什么办法可以保留这个课程的两个版本? 我到目前为止所考虑的事情是: 我看了一下味道的大小,但是事实certificate它们不适用于这种情况。 只保留一个文件中的一个风格,并通过我的构build脚本进行复制。 我想知道是否有更清洁的东西。

如何使用gradle为所有模块定义常见的android属性

我用一些模块在AndroidStudio中创build一个简单的项目。 每个模块的gradle脚本包含以下代码: android { compileSdkVersion 18 buildToolsVersion "18.1.1" defaultConfig { minSdkVersion 7 targetSdkVersion 18 } } 如何将此代码移动到主build.gradle脚本(项目的脚本)? 这个代码对于所有的子模块是通用的。

BuildConfig未正确创build(Gradle Android)

我试图将我们的Android应用程序转换为gradle构build。 我有这个项目,它的图书馆build设成功。 我现在试图为我们的各种环境创build单独的apks(dev / test / prod拥有不同的url,用于他们所使用的restful服务)。 在四处search时,我觉得要做到这一点的最好方法是为每个环境制作不同的BuildConfig。 这是我试过的: import java.util.regex.Pattern buildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:+' } } apply plugin: 'android' task('increaseVersionCode') << { def manifestFile = file("AndroidManifest.xml") def pattern = Pattern.compile("versionCode=\"(\\d+)\"") def manifestText = manifestFile.getText() def matcher = pattern.matcher(manifestText) matcher.find() def versionCode = Integer.parseInt(matcher.group(1)) def manifestContent = matcher.replaceAll("versionCode=\"" + […]

如何更改IntelliJ IDEA中“默认gradle包装”的版本?

我想用Gradle 1.10而不是1.9。 我似乎无法find在哪里改变这一点。 如果我把这个: task wrapper(type: Wrapper) { gradleVersion = '1.10' } 在我的build.gradle和重build,它是用Gradle 1.9再次build立(所以没有实际发生)。 这些似乎是所有的设置:(和IntelliJ的帮助部分关于Gradle根本没有帮助:()

了解Gradle任务依赖关系(dependsOn)

两个问题: 指定1个任务由多个其他任务组成的gradle方法是什么? 看起来像gradle的taskName.execute()方法不尊重任务的dependsOn关系是真实的,什么是解决方法? 更多背景: 现在我有一个没有插件的构build脚本(换句话说不是Java)。 我想要一个称为tests的任务来运行我所有的testing任务。 我有3个这样的任务。 称他们为task1,task2和task3。 我可以说tests.dependsOn ['task1', 'task2', 'task3'] 这是有点tests.isComprisedOf ['task1', 'task2', 'task3']因为关系似乎是tests.isComprisedOf ['task1', 'task2', 'task3'] 我可以说: task tests << { task1.execute() task2.execute() task3.execute() } 但是task3本身依赖于taskSetup,而不运行taskSetup。 换句话说,execute()调用似乎并不尊重gradle的依赖关系parsing策略。 最后一个小抱怨(顺便说一下,我真的很喜欢gradle),因为依赖意味着在gradle中有两个不同的东西,所以很难在这个主题上进行search:dependsOn样式依赖关系和库样式依赖关系。

Gradle错误升级到Android Studio 3.0 Beta 1

注意:这似乎是Android插件的问题。 查看相关问题的评论。 构build项目时出现以下gradle错误: Gradle sync failed: Cause: java.lang.NullPointerException at sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:98) at sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:77) at sun.nio.fs.WindowsPath.parse(WindowsPath.java:94) at sun.nio.fs.WindowsFileSystem.getPath(WindowsFileSystem.java:255) at java.nio.file.Paths.get(Paths.java:84) at com.android.build.gradle.internal.scope.BuildOutput.getOutputPath(BuildOutput.java:222) at com.android.build.gradle.internal.scope.BuildOutputs.lambda$load$2(BuildOutputs.java:243) at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1376) at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481) at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471) at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708) … 我还会注意到,我不得不手动设置jdk位置,因为如果我使用捆绑的,那么gradle守护进程将不会启动,抱怨说没有处于预期的上下文环境中(而是期望绑定上下文,而不是获取外部上下文)。 这个configuration在金丝雀9上工作(与捆绑的jdk)。

如何使用Gradle运行JUnittesting?

目前我有以下build.gradle文件: apply plugin: 'java' sourceSets { main { java { srcDir 'src/model' } } } dependencies { compile files('libs/mnist-tools.jar', 'libs/gson-2.2.4.jar') runtime fileTree(dir: 'libs', include: '*.jar') } 这build.gradle文件是我的存储库在这里 。 我所有的主要文件都在src / model /中,并且各自的testing都在test / model中 。 如何正确添加JUnit 4 依赖项 ,然后在testing/模型文件夹中运行这些testing?

testing运行失败:无法find检测信息:ComponentInfo {} – 尝试在IntelliJ中使用Gradle进行testing的错误

每次我尝试运行testing时,控制台都会这样说: Running tests Test running startedTest running failed: Unable to find instrumentation info for: ComponentInfo{com.employeeappv2.employeeappv2.test/android.test.InstrumentationTestRunner} Empty test suite. 我一直坚持这一段时间,迄今为止在网上看到的解决scheme没有帮助。 我的项目结构是这样设置的: *主模块-src * instrumentTest -java *主-java -manifest * build.gradle 我的build.gradle文件如下所示: buildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:0.9.+' } } apply plugin: 'android' repositories { mavenCentral() } android { compileSdkVersion 19 buildToolsVersion "19.1.0" defaultConfig […]

升级到Android Studio 2.3后,android-apt的插件不兼容

从2.2升级到2.3后,我看到这个警告 当我尝试编译项目时,我看到这个编译错误 我怎样才能解决这个问题,而不降级到以前的gradle版本? 有没有可以解决这个问题的android-apt的更新?

通过Gradle进行testing时logging

在testing时,Gradle似乎将stdout / stderrredirect到project_dir/build/reports/tests/index.html 。 有没有办法避免这种redirect,并把东西打印到控制台呢? 附加信息: 这是一个Scala 2.9.1项目。 我正在使用slf4s进行日志logging。