标签: gradle

Android Studio中的Gradle是什么?

Gradle对我和新的Android开发人员都有点困惑.任何人都可以解释Android Studio中的gradle是什么以及它的目的是什么?为什么Gradle包含在Android Studio中?

build-automation gradle android-studio android-gradle-plugin

1257
推荐指数
18
解决办法
41万
查看次数

Android Studio:将jar添加为库?

我正在尝试使用新的Android Studio,但我似乎无法让它正常工作.

我正在使用Gson库来序列化/反序列化JSON对象.但是库不知何故不包含在构建中.

我创建了一个只有MainActivity的新项目.在/ libs文件夹中复制gson-2.2.3.jar并将其添加为库依赖项(右键单击 - >添加为库).这包括android studio中的jar,因此可以从源文件中引用它.

当我尝试运行该项目时,它无法编译,所以我添加:

compile files('libs/gson-2.2.3.jar')
Run Code Online (Sandbox Code Playgroud)

到de .gradle文件中的依赖项.之后它正确编译,但在运行应用程序时,我得到了一个ClassDefNotFoundException.

有谁知道我做错了什么?

android dependency-management gradle gson android-gradle-plugin

1006
推荐指数
21
解决办法
72万
查看次数

Gradle中的实现和编译之间有什么区别?

在更新到Android Studio 3.0并创建一个新项目后,我注意到build.gradle有一种新方法可以添加新的依赖项,而不是compile存在implementation而不是testCompile存在testImplementation.

例:

 implementation 'com.android.support:appcompat-v7:25.0.0'
 testImplementation 'junit:junit:4.12'
Run Code Online (Sandbox Code Playgroud)

代替

 compile 'com.android.support:appcompat-v7:25.0.0'
 testCompile 'junit:junit:4.12'
Run Code Online (Sandbox Code Playgroud)

它们之间有什么区别,我应该使用什么?

dependency-management gradle transitive-dependency build.gradle gradle-plugin

899
推荐指数
10
解决办法
27万
查看次数

检索项目的父项时出错:升级到AppCompat v23后找不到与给定名称匹配的资源

我一直用Eclipse编程Android,并决定开始迁移到Android Studio.我决定使用我已经用于Eclipse的相同SDK,然后:

  • 开始了一个新项目
  • 设置最低SDK 4.0(API级别14)
  • 选择空白活动选项
  • 已使用活动名称和布局名称的默认名称
  • 命中完成

几秒钟后,Gradle完成构建,并在文件Teste4\app\build\intermediates/explosion-aar\com.android.support\appcompat-v7\23.0.0\res\values中抛出以下消息,从而引发了两个错误-v23 \价值观v23.xml:

错误:(2)检索项目的父项时出错:找不到与给定名称"android:TextAppearance.Material.Widget.Button.Inverse"匹配的资源.

错误:(2)检索项目的父项时出错:找不到与给定名称"android:Widget.Material.Button.Colored"匹配的资源.

文件 - >项目结构 - >模块:应用程序(左列) - >属性选项卡下,我设置了以下版本:

  • "编译Sdk版本":Android 5.1(API级别22)
  • "构建工具版本":23.0.2

我该怎么做才能解决这个问题?

我已经尝试过Stack Overflow问题appcompat-v7:21.0.0中的建议:找不到与给定名称匹配的资源:attr'android:actionModeShareDrawable',但它不起作用.

android gradle android-studio

773
推荐指数
14
解决办法
55万
查看次数

如何强制gradle重新下载依赖项?

如何告诉gradle从存储库重新下载依赖项?

gradle

680
推荐指数
17
解决办法
52万
查看次数

没有测试的Gradle构建

我想在gradle build不执行单元测试的情况下执行.我试过了:

$ gradle -Dskip.tests build
Run Code Online (Sandbox Code Playgroud)

这似乎没有做任何事情.我可以使用其他命令吗?

gradle

590
推荐指数
9
解决办法
34万
查看次数

如何将本地.jar文件依赖项添加到build.gradle文件?

所以我试图将我的本地.jar文件依赖项添加到我的build.gradle文件中:

apply plugin: 'java'

sourceSets {
    main {
        java {
            srcDir 'src/model'
        }
    }
}

dependencies {
    runtime files('libs/mnist-tools.jar', 'libs/gson-2.2.4.jar')
    runtime fileTree(dir: 'libs', include: '*.jar')
} 
Run Code Online (Sandbox Code Playgroud)

你可以看到我在这里将.jar文件添加到referencedLibraries文件夹中:https://github.com/WalnutiQ/wAlnut/tree/version-2.3.1/referencedLibraries

但问题是当我运行命令时:在命令行上运行gradle我得到以下错误:

error: package com.google.gson does not exist
import com.google.gson.Gson;
Run Code Online (Sandbox Code Playgroud)

这是我的整个回购:https://github.com/WalnutiQ/wAlnut/tree/version-2.3.1

java dependency-management gradle gradle-eclipse build.gradle

542
推荐指数
14
解决办法
50万
查看次数

找不到Gradle DSL方法:'runProguard'

从我上一个项目更新后出现错误.我的代码不是问题,但我在build.gradle时遇到问题.我该如何解决?

build.gradle代码在这里:

apply plugin: 'android'

android {
    compileSdkVersion 21
    buildToolsVersion '20.0.0'

    packagingOptions {
        exclude 'META-INF/DEPENDENCIES'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/license.txt'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/NOTICE.txt'
        exclude 'META-INF/notice.txt'
        exclude 'META-INF/ASL2.0'
    }

    defaultConfig {
        applicationId 'com.xxx.axxx'
        minSdkVersion 14
        targetSdkVersion 19
        versionCode 6
        versionName '1.0'
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    productFlavors {
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:19.+'
    compile files('libs/commons-codec-1.8.jar')
    compile files('libs/asmack-android-8-4.0.4.jar')
    compile 'com.android.support:support-v4:21.0.0'
    compile 'com.google.code.gson:gson:2.2.4'
    compile 'com.jakewharton:butterknife:5.1.1'
}
Run Code Online (Sandbox Code Playgroud)

Gradle Sync消息输出: …

android gradle android-gradle-plugin

494
推荐指数
4
解决办法
17万
查看次数

如何使用Gradle创建一个发布签名的apk文件?

我想让我的Gradle构建使用Gradle创建一个发布签名的apk文件.

我不确定代码是否正确或者我在做gradle build什么时缺少参数?

这是我的gradle文件中的一些代码:

android {
    ...
    signingConfigs {
          release {
              storeFile file("release.keystore")
              storePassword "******"
              keyAlias "******"
              keyPassword "******"
         }
     }
}
Run Code Online (Sandbox Code Playgroud)

gradle构建完成SUCCESSFUL,在我的build/apk文件夹中我只看到...-release-unsigned.apk...-debug-unaligned.apk文件.

关于如何解决这个问题的任何建议?

android release gradle apk android-gradle-plugin

493
推荐指数
20
解决办法
24万
查看次数

使用gradle查找依赖树

是否有可能使用gradle来生成依赖于什么的树?

我有一个项目,并希望找出所有的依赖项,所以我可以通过前向声明等来修剪它.

gradle

474
推荐指数
15
解决办法
36万
查看次数