我正在尝试使用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之外编译成功?
答案 0 :(得分:6)
回答我自己的问题 - 问题是lombok(0.12.0)的版本与java 8不兼容。要修复,我使用cutting edge version of lombok,将其安装到我当地的maven仓库中这条线
mvn install:install-file -Dfile=lombok-edge.jar -DgroupId=org.projectlombok -DartifactId=lombok-edge -Dversion=0.12.1 -Dpackaging=jar
然后相应地更改了我的pom中的依赖项。
一旦我这样做,我就可以从命令行maven编译。