当前位置: 首页 > 知识库问答 >
问题:

如何在Android Studio 3.0中正确设置Lombok

宿淳
2023-03-14

我想知道我在Android Studio 3.0 Beta 2的Lombok设置中做错了什么?

这就是我的 Gradle 构建文件的样子:

buildscript {
    repositories {
        mavenCentral()
        jcenter()
        maven { url "https://plugins.gradle.org/m2/" }
    }
    dependencies {
        classpath "io.franzbecker:gradle-lombok:1.10"
        classpath 'com.android.tools.build:gradle:2.3.3'
    }
}

allprojects {
    apply plugin: "eclipse"
    apply plugin: "idea"

    version = '1.0'
    ext {
        appName = "MyAppName"
        gdxVersion = '1.7.0'
    }

    repositories {
        mavenCentral()
        maven { url "https://oss.sonatype.org/content/repositories/snapshots/" }
        maven { url "https://oss.sonatype.org/content/repositories/releases/" }
    }
}

project(":desktop") {
    apply plugin: "java"


    dependencies {
        compile project(":core")
        compile "com.badlogicgames.gdx:gdx-backend-lwjgl:$gdxVersion"
        compile "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-desktop"
    }
}

project(":android") {
    apply plugin: "android"

    configurations { natives }

    dependencies {
        compile project(":core")
        compile "com.badlogicgames.gdx:gdx-backend-android:$gdxVersion"
        natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-armeabi"
        natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-armeabi-v7a"
        natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-x86"
    }
}

project(":core") {
    apply plugin: "io.franzbecker.gradle-lombok"
    apply plugin: "java"

    dependencies {
        compile "com.badlogicgames.gdx:gdx:$gdxVersion"
        compile "com.badlogicgames.gdx:gdx-freetype:$gdxVersion"
        compileOnly "org.projectlombok:lombok:1.16.18"
    }
}

tasks.eclipse.doLast {
    delete ".project"
}

我已经安装了lombok插件,lombok的东西也在IDE中正确显示,但当我想构建项目时,Gradle找不到lombok创建的getter/setter。我试着按照教程https://projectlombok.org/setup/android和其他关于此设置的堆栈溢出页面,但没有任何效果。在Android Studio 2.3中,我甚至无法正确启用注释处理,这就是为什么我更新到最新的beta版本,这至少是可行的。

共有3个答案

石俊雄
2023-03-14

我面临着同样的问题,升级AS到3.0和Gradle到4.1,lombok停止生成setter/getter。

因此,如果您正在使用带IntelliJ的lombok插件,那么对我来说,将lombok从最新的稳定边缘版本降级到0.15.17.2解决了这个问题。

这个问题帮助我解决了这个问题

朱睿
2023-03-14

您需要使用newannotationProczer而不是apt:Gradle迁移annotationProczer

annotationProcessor "org.projectlombok:lombok:1.16.18"

我遇到了和你一样的问题,现在它的工作原理

云景焕
2023-03-14

我有同样的问题。最后,我得到了这个解决方案-

compileOnly 'org.projectlombok:lombok:1.16.18'
compileOnly 'javax.annotation:javax.annotation-api:1.3.1'
annotationProcessor 'org.projectlombok:lombok:1.16.18'
 类似资料:
  • null 这是这个问题的视频 下面是我如何切换屏幕的代码: 从游戏第一次打开到主菜单: GamesCreen:

  • 问题内容: 我在设置布局时遇到一些问题。(不要介意按钮的大小,我只想正确地了解布局)。 Here’s my code: 谁能帮助我了解布局的工作原理? 我一直在观看很多视频,并尝试过不同的布局,但仍然无法正确完成。告诉我是否使用了正确的布局,或者是否应该更改布局 。 问题答案: 如 该答案中所建议的那样,可以为左部分提供所需的全部控制。如果您愿意为简单起见而牺牲一些控制权,则可以在a里面放两个面板

  • 问题内容: 我正在尝试运行Java程序,但是它采用默认的GMT时区而不是OS定义的时区。我的JDK版本是1.5,操作系统是Windows Server Enterprise(2007) Windows指定了中央时区,但是当我运行以下程序时,它给了我GMT时间。 这是输出 请注意,我不想从应用程序中设置时区。我希望JVM使用的时区应该是操作系统中指定的时区。(对于具有JDK 1.4版和Microso

  • 问题内容: 我不时看到有关连接数据库的问题。 大多数答案不是我做的方式,否则我可能只是无法正确获得答案。无论如何; 我从未考虑过,因为我的工作方式对我有效。 但是这里有个疯狂的想法;也许我做错了所有,如果是这样的话;我真的很想知道如何使用PHP和PDO正确连接到MySQL数据库并使其易于访问。 这是我的做法: 首先,这是我的文件结构 (向下精简) : index.php 在最顶部,我有。 load

  • 问题内容: 我有一个关于mysql时区的怪异问题。 在我的网站配置文件中,我这一行设置了时区: 有趣的是,如果我在此之后添加另一行,例如: 执行该代码后,时间将正确显示。 但是,在其他一些查询中,我在表中插入行,这些表的列名为date,默认为CURRENT_TIMESTAMP。 这样插入行: (“会话”表的列默认为CURRENT_TIMESTAMP) 但是插入到数据库中的值仍指向服务器的时区:((

  • 问题内容: 遵循OnlyOffice帮助中心的说明,将创建由浏览器声明为无效的安全证书,因为它是自签名的。 目的是在适用于NextCloud的Docker上使用OnlyOffice的服务器,该服务器已在另一台服务器上正常运行。 当前,已在说明建议的目录中创建证书: 我已经按照所有给定的步骤进行操作,但是它不起作用。 有没有办法使用LetsEncrypt代替自签名证书? 我不是IT管理人员,我是一个