草庐IT

java - Project Lombok @Data 注释是否创建任何类型的构造函数?

我有一个带有@Data注释的类,但我不确定是否生成了带参数的构造函数,或者唯一生成的构造函数是来自vanillaJava的默认(无参数)构造函数。 最佳答案 如果没有定义构造函数,将生成一个@RequiredArgsConstructor。ProjectLombok@Datapage解释:@Dataislikehavingimplicit@Getter,@Setter,@ToString,@EqualsAndHashCodeand@RequiredArgsConstructorannotationsontheclass(except

java - 将 lombok 与 gradle 和 spring-boot 一起使用

我正在尝试使用lombok构建一个项目,这就是我所拥有的依赖项。dependencies{compile("org.springframework.boot:spring-boot-starter-thymeleaf")compile("org.springframework.social:spring-social-facebook")compile("org.springframework.social:spring-social-twitter")testCompile("org.springframework.boot:spring-boot-starter-test")tes

java - Maven Groovy 和 Java + Lombok

我正在尝试将groovy添加到利用Lombok的现有JavaMaven项目中。不幸的是,当我使用下面的pom片段启用groovy-maven-eclipse编译器时,我的lombok注释java文件无法编译。据我所知,Lombok根本不参与java文件的编译。maven-compiler-plugin2.3.1groovy-eclipse-compilertrueorg.codehaus.groovygroovy-eclipse-compiler2.6.0-01-SNAPSHOT我还应该指出,在eclipse中(使用m2e)一切正常。当我尝试执行mvn包时出现问题。

java - IntelliJ 将 Lombok 生成的方法突出显示为 “cannot resolve method”

这个问题在这里已经有了答案:Can'tcompileprojectwhenI'musingLombokunderIntelliJIDEA(42个答案)关闭2年前。我正在使用Lombok的@Data注释来创建我的POJO的基本功能。当我尝试使用这些生成的方法时,IntelliJ将它们突出显示为错误(无法解析方法‘getFoo()’)并且似乎无法找到它们。然而它们确实存在,因为我能够使用这些方法毫无问题地运行代码。我确保启用注释处理,因此不会造成任何问题。如何让IntelliJ找到方法并停止错误地将它们标记为错误?

java - 如何在方法上使用 Lombok @Builder 注释

我想要一种简单的方法来构建测试数据,并且发现构建器模式非常适合描述here.然而,为了减少组件测试中的样板代码,甚至更多,我发现了@Builder来自ProjectLombok成为一个不错的候选人。但是,我找不到任何关于如何在方法上使用它的文档或在线示例。我想在某种工厂方法上使用@Builder,因为我无法对实现进行任何更改。有人可以举例说明如何在方法上实际使用@Builder吗? 最佳答案 这就是您使用@Builder的方式.//Employee.Javaimportlombok.Builder;importlombok.ToSt

java - 使用 Lombok 进行 Spring Boot 日志记录

我想使用ProjectLombok'slogannotation在我的SpringBoot项目中,但我不想失去能够从application.properties更改日志记录的功能。Spring日志记录文档并不太清楚应该使用什么默认日志记录实现,并且有7个Lombok选择!有什么想法吗? 最佳答案 我会使用@Slf4j。测试了以下内容,它按预期工作。@SpringBootApplication@Slf4jpublicclassDemoApplication{publicstaticvoidmain(String[]args){Spri

java - Android Studio 找不到来自 lombok 的 AllArgsConstructor

当我创建一个具有一个或多个字段的新Java类并将@AllArgsConstructor注释从lombok附加到它时,我会收到此消息Error:(9,1)error:找不到符号类ConstructorProperties来自GradleBuild控制台。我能够通过使用此配置创建一个新的空Android项目来重现这一点。类(从未使用或实例化)@lombok.AllArgsConstructorpublicclassModel{intfoo;Stringbar;}build.gradle:dependencies{compilefileTree(dir:'libs',include:['*.

java - lombok会降低性能吗?

我真的很喜欢项目lombok摆脱样板代码的特性。我的前辈建议我,lombok似乎使用反射来减少样板代码,我曾经听说过使用反射效果性能。我的问题是使用项目lombok有什么问题吗? 最佳答案 Lombok在运行时不使用反射。它Hook到编译器内部,并在编译时将代码添加到类中,然后正常编译。 关于java-lombok会降低性能吗?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/39

java - 如何让 Lombok 和 AspectJ 一起工作?

我刚刚发完thisissueonSO关于Lombok没有生成我的getter/setter。事实证明,它与AspectJ冲突。如果我禁用AspectJ,那么会适本地生成getter/setter。我的猜测是ajc编译器无法识别lombok。Lombok和AspectJ是否相互排斥?两种技术可以一起工作吗? 最佳答案 AspectJ维护者AndyClement目前的回答是,由于在AspectJ编译器基础结构中包含和重命名了ECJ(Java的Eclipse编译器)包,因此存在问题。有关更多信息,EricB.和A.Clement正在Asp

java - 在 Lombok 的构建器中使用自定义 setter

我在基于Lombok的POJO中有一个自定义setter:@Data@BuilderpublicclassUser{privatestaticfinalPasswordEncoderENCODER=newBCryptPasswordEncoder();privateStringpassword=null;publicvoidsetPassword(Stringpassword){Assert.notNull(password);this.password=ENCODER.encode(password);}但是当我使用Lombok生成的构建器时:Useruser=User.builde