【问题标题】:Compiling with lombok using maven and java 8使用 maven 和 java 8 编译 lombok
【发布时间】:2013-10-10 18:35:02
【问题描述】:

我正在尝试获取带有 lombok.jar 注释的文件,以便使用 Java 8 早期访问版本之一与 maven 3 一起编译。我已将 maven 配置为使用 java 8 编译器。我正在编译的代码在 maven Central 中有一个为 lombok 0.12 定义的依赖项。但是,当我使用 maven 编译时,出现以下错误:

[ERROR] symbol:   variable log
[ERROR] location: class Foo
[ERROR] C:.....\Foo.java:[319,33] error: cannot find symbol

我已在调试模式下运行 maven,并且指定的类路径条目指出 lombok 0.12 jar 文件位于项目的类路径中。此外,我尝试在我的类路径中专门设置 lombok.jar(我可以在 Maven 调试模式下的 env.CLASSPATH 中看到),这会产生相同的结果。

一切都在 Eclipse 中构建和编译得很好——我在 Maven 配置/环境中做错了什么,以至于我无法在 Eclipse 之外成功编译?

【问题讨论】:

    标签: maven-3 java-8 lombok


    【解决方案1】:

    回答我自己的问题 - 问题在于 lombok (0.12.0) 的版本不能很好地与 java 8 一起使用。要修复,我使用了 cutting edge version of lombok ,将它安装到我的本地 maven repo 中

    mvn install:install-file -Dfile=lombok-edge.jar -DgroupId=org.projectlombok -DartifactId=lombok-edge -Dversion=0.12.1 -Dpackaging=jar 
    

    然后相应地更改了我的 pom 中的依赖项。

    一旦我这样做了,我就可以从命令行 maven 编译。

    【讨论】:

    • 昨天 Lombok 版本 1.12.2 发布,解决了这个特殊问题。完全免责声明:我是 Lombok 项目的开发者之一。
    • 感谢您让我了解新版本。 FWIW - 我很喜欢使用 Lombok。继续努力。
    猜你喜欢
    • 1970-01-01
    • 2016-08-10
    • 2012-01-21
    • 1970-01-01
    • 1970-01-01
    • 2015-05-16
    • 1970-01-01
    • 2017-04-20
    相关资源
    最近更新 更多