如何在android studio中设置编译库。 LOMBOK

时间:2014-01-25 00:01:21

标签: android gradle android-studio lombok

帮助我在build.gradle中的Android Studio中设置comile依赖项。 我的意思是他们不包括在最终的APK中。

这个build.gradle工作正常,但我不需要

  

Lombok的

运行时apk中的库;

apply plugin: 'android'

android {
    compileSdkVersion 19
    buildToolsVersion "19.0.0"

    defaultConfig {
        minSdkVersion 10
        targetSdkVersion 16
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    } }

dependencies {
    compile 'com.android.support:appcompat-v7:+'
    compile 'org.projectlombok:lombok:1.12.2' }

可能可以在所有项目的全局build.gradle文件中进行设置吗?

4 个答案:

答案 0 :(得分:13)

使用Android Studio 1.1.0,我找不到一组合并的说明,用于添加适用于我的Lombok。这包括Lombok自己的设置页面:http://projectlombok.org/setup/android.html

以下是我必须做的所有工作(在OS X上):

  • 在Android Studio中安装Lombok插件
    • Android Studio>偏好>插件
    • 点击Browse repositories...
    • 搜索Lombok插件
    • 点击Install plugin
    • 重新启动Android Studio
  • 添加到app / build.gradle中的android / dependencies块:provided 'org.projectlombok:lombok:1.16.2'
    • 请参阅search.maven.org了解最新版本,因为lombok的说明在发布新版本时不会更新
    • 我假设项目根目录中build.gradle中的subprojects方法(来自ОлександрСамсонов的答案)也有效,但似乎需要从app / build.gradle移动配置(不允许进一步扩展子项目中的配置)。我不想移动整个android配置,所以我把它保存在app / build.gradle中。
  • 在项目的根目录中创建一个包含两行的lombok.config文件: lombok.anyConstructor.suppressConstructorProperties = true lombok.addGeneratedAnnotation = false

答案 1 :(得分:6)

执行此操作的能力刚刚添加到v0.8 Android-Gradle插件中,如果您运行的是Android Studio 0.4.3(可在金丝雀更新频道上使用),则可以使用该插件。

release notesthread on the adt-dev mailing list

中提到了这一点

您可以这样指定:

dependencies {
    provided 'org.projectlombok:lombok:1.12.2'
}

我已经提交了错误https://code.google.com/p/android/issues/detail?id=65216来请求通过项目结构对话框中的依赖关系面板进行编辑的功能。目前,您必须手动编辑 build.gradle 文件才能使用此文件。

至于你是否可以将它放在顶级 build.gradle 文件中以使其适用于所有模块,我不确定。我尝试将它放在allprojects块中,但是Gradle告诉我默认的依赖处理程序不知道如何处理它。所以我猜不是,但如果我得到其他信息,我会更新这个答案。

答案 2 :(得分:3)

Android Studio

  1. 转到文件>设置>插件
  2. 点击"浏览存储库..."
  3. 搜索" Lombok插件"
  4. 点击"安装插件"
  5. 重新启动Android Studio

答案 3 :(得分:2)

我通过更改gradle文件夹中的gradle-wrapper.properties文件来解决此问题。 现在它看起来像这样:

#Sat Jan 25 02:59:06 EET 2014
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=http\://services.gradle.org/distributions/gradle-1.10-all.zip

在主build.gradle文件中,我可以为lombok

写这个
// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.8.+'
    }
}

allprojects {
    repositories {
        mavenCentral()
    }
}

subprojects {
    apply plugin: 'android'

    buildscript {
        repositories {
            mavenCentral()
        }
    }

    android {
        compileSdkVersion 19
        buildToolsVersion "19.0.0"

        defaultConfig {
            minSdkVersion 10
            targetSdkVersion 16
            versionCode 1
            versionName "1.0"
        }
        buildTypes {
            release {
                runProguard false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
            }
        }
    }

    dependencies {
        compile 'com.android.support:appcompat-v7:+'
        provided 'org.projectlombok:lombok:1.12.2'
    }
}

现在在子项目中,我不需要为插件或存储库编写许多参数,并且提供的方法非常好。