【问题标题】:Gradle build not working with lombok Spring bootGradle 构建不适用于 lombok Spring boot
【发布时间】:2018-08-25 07:54:48
【问题描述】:

我有一个带有 lombok jar 的 gradle 项目,我在 gradle 中添加了以下依赖项,Gradle 版本:4.5.1

compileOnly group:'org.projectlombok',name:'lombok', version: '1.16.20'

gradle build in 命令提示不起作用

【问题讨论】:

  • 究竟是什么不工作?
  • 获取编译错误找不到符号setter方法和getter方法找不到,由于lombok jar我们不会给setter getter只会提供@Data注解

标签: spring-boot gradle java-8 lombok


【解决方案1】:

对我来说,您引用的表达式工作正常。您能否提供有关您观察到的错误的更详细描述。要显示错误的更详细跟踪,请使用“--stacktrace”命令行开关,例如:

.\gradlew --stacktrace assemble

命令行 gradle 是否给你编译错误信息?或者您是否正在使用 Android Studio,如果您忘记将 lombok 设置为注释处理器代理,请参阅:https://projectlombok.org/setup/androidFile > Other Settings > Default Settings...> Build, Execution, Development > Compiler > Annotation Processors > 启用注释处理.

【讨论】:

  • 感谢@Istvan,它基于 Java 的 Spring Boot 项目,当我 gradle build Istvan TestService.java:23: error: cannot find symbol resource.setTopic(topic); ^ symbol: method setTopic(Topic) location: variable resource of type Measure User\dd\exception\handler\RestR esponseEntityExceptionHandler.java:44: error: cannot find symbol return ApiError.builder() ^ symbol: method builder() location: class ApiError 这些错误是 lombok 设置器和生成器方法
  • 终于可以解决这个问题了 :) spring rest api 就像public Department getEmployeesDepartmet(@Pathvariabel(ID) int id , @Pathvariable(employeId) in employeeID) here ID and employeeID was string constant 由于这个得到编译器错误 int cannot convert to String 只是删除了常量并在 pathvariable 中添加了字符串变量
【解决方案2】:

终于可以解决问题了 :) spring rest api就像public Department getEmployeesDepartmet(@Pathvariabel(ID) int id , @Pathvariable(employeId)int employeeID)

这里 ID 和employeeID 是字符串常量,因为编译器错误 int cannot convert to String 只是删除了常量并在路径变量中添加了字符串变量 -

【讨论】:

    猜你喜欢
    • 2019-02-24
    • 1970-01-01
    • 2020-05-25
    • 2015-06-28
    • 2020-12-22
    • 1970-01-01
    • 2018-10-19
    • 2017-03-21
    • 1970-01-01
    相关资源
    最近更新 更多