Articles of gradle

无法build立库项目Bintray Gradle – ClassNotFoundException

我仍然试图让我的gradle脚本工作,我expolered所有日志,似乎有一些类是失踪。 这里是消息。 org.gradle.api.GradleScriptException: A problem occurred evaluating project ':horizontalrecyclerview'. Caused by: java.lang.NoClassDefFoundError: org/gradle/api/publication/maven/internal/DefaultMavenFactory at org.gradle.api.plugins.AndroidMavenPlugin.apply(AndroidMavenPlugin.java:88) at org.gradle.api.plugins.AndroidMavenPlugin.apply(AndroidMavenPlugin.java:57) at org.gradle.api.internal.plugins.ImperativeOnlyPluginApplicator.applyImperative(Imper Caused by: java.lang.ClassNotFoundException: org.gradle.api.publication.maven.internal.DefaultMavenFactory … 51 more 这是我的build.gradle 。 apply plugin: 'com.android.library' apply plugin: 'com.github.dcendents.android-maven' apply plugin: 'com.jfrog.bintray' version = "1.0.0" android { compileSdkVersion 21 buildToolsVersion "21.1.2" defaultConfig { minSdkVersion 8 targetSdkVersion 21 versionCode 1 versionName […]

在Android Studio中生成签名APK

有几个问题与我在Stackoverflow中的问题有关,比如: 如何在Android工作室中导出项目? 如何使用Gradle创build一个发行版签名的apk文件 他们很好。 但还是让我困惑。 当我在Android Studio中selectBuild-> Generate signed APK时,我收到了以下警告消息: 这是什么意思? 这是否意味着我必须通过configurationbuild.gradle来使用gradle命令行? 那么该向导是什么? 如果我通过点击ok忽略警告,然后按照向导生成apk文件,当我将apk上传到Google Play时,我会收到错误消息,说明apk处于debugging模式。 如果我按照说明来设置build.gradle,像这样: signingConfigs { debug { storeFile file("debug.keystore") } release { storeFile file("../key/test.keystore") storePassword "password" keyAlias "key" keyPassword "password" } } buildTypes { release { debuggable false signingConfig signingConfigs.release } } 当我在terminal运行./gradlew assembleRelease时,一切都是文件。 总之,我很困惑: 如果必须设置build.gradle,“生成签名的APK”向导的目的是什么? 当我运行“生成签名的APK”时,如何在发布模式下构build我的应用程序 谢谢你的任何build议。

Kotlin:Gradle增量编译

在M9公告中,有人表示现在支持增量编译。 这是否也适用于Gradle,尤其是Android? 如果是,如何启用它?

未findSDK位置。 ANDROID_HOME – 在MAC上的eclipse中build立gradle项目

我正在运行一个关于让Libgdx在我的MAC上使用eclipse的教程。 我目前正在使用eclipse中的gradle构build示例项目之一,所以我可以通过教程运行并学习更多。 当我导入和构build示例代码项目(我正在使用一个MAC)时,我收到以下错误消息: “找不到SDK位置,在local.properties文件或者ANDROID_HOME环境variables中用sdk.dir定义一个位置”。 为了解决这个问题,我尝试并检查了以下内容: 1)安装最新版本的JDK并设置JAVA_HOME – 通过从terminal回显variables确认存在。 2)安装最新的和各种其他版本的android SDK和插件,并设置ANDROID_HOME。 – 通过检查Android Studio SDK位置并回显$ ANDROID_HOME来确认 3)我也发现这个线程和build议的解决scheme是用sdk.dir更新local.properties,我也尝试过,我仍然得到相同的错误: Gradle,Android和ANDROID_HOME SDK位置 4)我已经安装了Eclipse的android偏好,以确保它在看ANDROID_HOME,它可以看到各种SDK文件夹。 我也做了一些尝试,通过android studio添加–stacktrace选项,但是在Eclipse中似乎没有产生输出。 我将尝试通过eclipse之外的命令行来构build项目,看看是否可行。有没有人遇到过这个问题? 菲尔

Gradle:如何从JScience jar依赖关系中排除javax.realtime包(Multiple dex define)

我在我的Android应用程序中使用Gradle,我想使用JScience库依赖项。 我已经这样添加库了: dependencies { compile fileTree(dir: 'libs', include: '*.jar') compile 'org.jscience:jscience:4.3.1' testCompile group: 'junit', name: 'junit', version: '4.11' } 但在编译时,我得到的错误: UNEXPECTED TOP-LEVEL EXCEPTION: com.android.dex.DexException: Multiple dex files define Ljavax/realtime/MemoryArea; at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:594) at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:552) at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:533) at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:170) at com.android.dx.merge.DexMerger.merge(DexMerger.java:188) at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:439) at com.android.dx.command.dexer.Main.runMonoDex(Main.java:287) at com.android.dx.command.dexer.Main.run(Main.java:230) at com.android.dx.command.dexer.Main.main(Main.java:199) at com.android.dx.command.Main.main(Main.java:103) 这是因为在项目中复制了javax.realtime包,一个是JDK的一部分,另一个是Jscience库。 我已经尝试在这个Gradle中从Jscience库中删除这个包: sourceSets { main { […]

在特定设备上运行gradle的connectedAndroidTest

如何在特定设备上运行connectedAndroidTest ? 我会期望像这样的东西: ./gradlew connectedAndroidTest -DconnectedAndroidTest.device=XXXX 我们有很多设备插入我们的CI服务器,我似乎无法find任何关于如何针对特定连接设备的文档。 connectedAndroidTest当前在所有连接的设备上运行testing。 谢谢。

Unity项目作为Gradle中的依赖项

我想导入一个unity3d项目作为一个模块我的android项目。 一切都好,gradle同步完成没有错误,但是当我添加统一项目作为依赖我的项目,并运行gradle同步然后它说: Error:Dependency myapplication:unityproject:unspecified on project app resolves to an APK archive which is not supported as a compilation dependency. File: /Users/michal/Documents/Projects/myapplication/unityproject/build/outputs/apk/unityproject-release-unsigned.apk 我试过谷歌它,但没有运气…非常感谢任何提示…我使用Android Studio(如果有帮助) 我可以在移动设备上构build和运行独立的unity3d项目,问题只是当我试图将它作为模块(依赖项)添加到另一个项目

即时运行在Android Studio上不起作用,Gradle版本2.10是必需的。 我用2.10

这是我得到的错误: Error:Gradle version 2.10 is required. Current version is 2.8. If using the gradle wrapper, try editing the distributionUrl in /Users/alinrosu/Workspace/passenger-android/gradle/wrapper/gradle-wrapper.properties to gradle-2.10-all.zip 我在我的buildscript中使用这个: dependencies { classpath 'com.android.tools.build:gradle:2.0.0-alpha5' } 这是我的gradle-wrapper.properties文件: #Tue Jan 05 13:28:23 CET 2016 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip 如你看到的。 我使用gradle版本2.10。 我需要以某种方式刷新caching吗? 我试图干净,重build,但没有任何工作

Gradle:使用flavor和packageName时没有find属性的资源标识符

我目前正在努力将我们的应用程序从ant迁移到gradle,并设法使所有的工作。 现在我想使用不同packageName的flavor来安装Production应用程序。 这是我做的口味: productFlavors { playstore { packageName='com.my.app' buildConfig "– a bunch of build flags for ps –" } beta { packageName='com.my.beta.app' buildConfig "– a bunch of build flags for beta –" } dev { packageName='com.my.dev.app' buildConfig "– a bunch of build flags for dev –" } } 我的问题是,我们使用自定义视图的一些自定义属性,我得到的错误: Gradle: No resource identifier found for […]

仅在运行testing时出现DexIndexOverflowException

我可以在我的debugging和发布版本中成功构build和运行我的Android应用程序,没有任何问题。 然而,当我尝试运行我的新unit testing(我从来没有他们之前),我得到了可怕的DexIndexOverflowException 。 我怀疑ProGuard没有在我的unit testing中运行,但它是我的正常debugging和发布buildTypes。 在unit testing运行configuration中运行ProGuard需要做什么? 我通过Gradle文档, ProGuard文档和Android Studio文档search了解这些,但是我什么也没find。