我试图在我的项目中使用Lombok,我正在使用IntelliJ IDEA 11开发。

我已经为IDEA安装了第三方插件,它似乎工作正常,因为IDEA可以看到所有自动生成的方法/字段。

我有一个使用Slf4j的类。我这样做了注解

import lombok.extern.slf4j.Slf4j;

@Slf4j
public class TestClass
{
    public TestClass()
    {
        log.info("Hello!");
    }
}

但当我建立我的项目编译器吐槽:无法找到符号变量日志。

你能告诉我我错过了什么吗?

更新:原来是RequestFactory注释过程失败了。

input files: {com.zasutki.courierApp.server.TestServlet, com.mine.courierApp.server.model.DatastoreObject}

annotations: [javax.inject.Singleton, javax.inject.Inject, lombok.Getter, lombok.Setter, com.googlecode.objectify.annotation.Id, com.googlecode.objectify.annotation.OnSave]

Processor com.google.web.bindery.requestfactory.apt.RfValidator matches [lombok.Getter, com.googlecode.objectify.annotation.Id, javax.inject.Inject, lombok.Setter, com.googlecode.objectify.annotation.OnSave, javax.inject.Singleton] and returns false.

cannot find symbol variable log

有什么解决办法吗?

更新2:也许这不是读者想听到的,但我最终转向了Scala。


当前回答

To get this working, simply install the "Lombok Plugin" for IntelliJ. You don't need to do anything with enabling "Annotation Processors", as some other commentors have suggested. (I've tested this with the latest version of IntelliJ IDEA, currently 2017.1.2). To install the plugin, go to Settings, then Plugins, then click the "Browse repositories" button, then search for "Lombok", and install the Lombok Plugin. You will be prompted to restart IntelliJ. Afterwards, you should be able to compile from IntelliJ, and you won't receive any more error inspections.

其他回答

上面的任何一个解决方案都对我不起作用。我添加了<scope>提供</scope>到pom.xml中的依赖项,它工作了。

<dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>1.16.20</version>
        <scope>provided</scope>
    </dependency>

您的项目有lombok依赖项吗?在编译使用任何lombok-annotation的项目期间,Lombok.jar必须位于类路径上。

我的问题是IntelliJ IDEA中捆绑的Lombok插件版本与IntelliJ IDEA本身的版本不兼容。我把IntelliJ降级到2019.1.4,它起作用了。

我也遇到过类似的问题。下面的方法对我很有效。

下载(从这里https://projectlombok.org/download)并在项目结构中添加jar。

步骤:文件->项目结构->全局库

对于MacOS上的Eclipse用户,执行此操作。这对我很管用。

将lombok.jar复制到Eclipse中。应用程序/内容/ MacOS目录。 在Eclipse.app/Contents/Eclipse/ Eclipse. ini文件的末尾添加-javaagent:lombok.jar。 重新启动Eclipse并启用项目属性中的“Annotation Processing”。

引用这