我正在尝试向使用Lombok的现有Java Maven项目添加常规功能。不幸的是,当我用下面的pom片段启用groovy-maven-
eclipse编译器时,我的带有lombok注释的Java文件无法编译。据我所知,Lombok根本不参与Java文件的编译。
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.1</version>
<configuration>
<compilerId>groovy-eclipse-compiler</compilerId>
<verbose>true</verbose>
</configuration>
<dependencies>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-compiler</artifactId>
<version>2.6.0-01-SNAPSHOT</version>
</dependency>
</dependencies>
</plugin>
我还应该指出,在eclipse中(使用m2e)一切正常。当我尝试执行mvn软件包时,会出现我的问题。
@Todd:如果您不需要使用某些groovy工具开发paven插件,则groovy-eclipse-
compiler是最佳选择(请参阅http://groovy.codehaus.org/Groovy-
Eclipse+compiler+plugin+for+Maven
)。
@环境:您在http://jira.codehaus.org/browse/GRECLIPSE-1293上遇到了相关问题。现在,此错误已通过最新的groovy-
eclipse-compiler 2.6.1-01-SNAPSHOT修复。
注意 :现在可用的最新版本是 2.9.1-01 ,请参阅http://docs.groovy-
lang.org/latest/html/documentation/tools-
groovyeclipse.html
您必须像这样修改pom:
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<compilerId>groovy-eclipse-compiler</compilerId>
<verbose>true</verbose>
<fork>true</fork>
<compilerArguments>
<javaAgentClass>lombok.launch.Agent</javaAgentClass>
</compilerArguments>
</configuration>
<dependencies>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-compiler</artifactId>
<version>2.9.1-01</version>
</dependency>
<!-- for 2.8.0-01 and later you must have an explicit dependency on groovy-eclipse-batch -->
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-batch</artifactId>
<version>2.3.7-01</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.4</version>
</dependency>
</dependencies>
</plugin>
必修部分:
<fork>true</fork>
<compilerArguments>
<javaAgentClass>lombok.launch.Agent</javaAgentClass>
</compilerArguments>
在maven-compiler-plugin中增加了对lombok的依赖
编辑: 更新版本
我试着在IntelliJ上使用Lombok和Maven和VRaptor,但它不起作用。 我已经在stackoverflow中阅读了一些信息,但没有解决我的问题,我已经在Intellij中启用了注释处理器,但仍然一无所获。 我也试图从命令行(Windows)编译它,但没有成功。 我还尝试在没有maven的情况下创建另一个项目,添加库,创建一些用于测试的类,它可以完美地工作、编译和运行。 有什么帮助吗
我在Intellij遇到了一个奇怪的问题。我正在使用Lombok(1.18.2)、IntelliJ(2018.2.2)和JUnit 5在gradle 4多模块项目中。 我花了好几个小时来复制这个。 > 运行所有具有覆盖率测试用例。 移除龙目镜并在此之后生成吸气剂和定型剂也没有效果。 尝试了一切来解决这个问题(启用注释处理器、Lombok插件、清理构建),但没有成功。 编辑1: Root build
Lombok@Data annotation将在带注释的类上无声地添加字段的setter和getter。 如何在龙目岛添加基于条件的setter? lombok中有没有这样的支持 我已经在龙目岛文件中搜索了,我没有看到关于我的问题的解释。
我在gradle项目中使用lombok,希望创建一个jar文件,但每次我执行jar任务(无论是在控制台还是eclipse ide中触发)时,我都会发现错误,我的lombok导入在我使用lombok注释的类中找不到。输出示例: 搜索了一段时间后,我发现有一个适用于gradle和lombok的插件,但在使用较新的gradle版本编译时并不真正需要。我的gradle版本是3.4.1和lombok 1.6
我只是试图将一个基于Maven的项目发送到另一台计算机上,而可怕的是,到处都是红色标记!! 但是,构建得很好。 很快,我注意到Lombok没有为我的类生成getter和setter,尽管和被Eclipse正确识别。
我们使用spring boot 2.1.5和starter parent作为pom依赖项。 Spring启动使用默认的日志回馈进行日志记录,我们尚未显式切换到Log4j2或更改任何配置。下面是我们的项目依赖关系树。 我们的项目中有很多lombok@log4j2注释。但是,我们在依赖关系树中发现我们没有任何log4j2-core jar依赖项(发现它容易受到最近log4j问题的影响)。 lombok