1. 程式人生 > 實用技巧 >使用 gradle 的 bootJar 命令打包時報錯

使用 gradle 的 bootJar 命令打包時報錯

gradle + lombok,測試一切正常,使用 bootJar 命令打包時,報錯:

> Task :compileJava
D:\IdeaProjects\xxx\src\main\java\xxx\FeignInterceptor.java:30: 錯誤: 找不到符號
        log.info("FeignInterceptor 攔截器生效");
        ^
  符號:   變數 log

D:\IdeaProjects\xxx\src\main\java\xxx\BusinessInfoService.java:105: 錯誤: 找不到符號
        businessInfo.setTitle("標題");
                    ^
  符號:   方法 setTitle(String)
  位置: 型別為BusinessInfo的變數 businessInfo
  
D:\IdeaProjects\xxx\src\main\java\xxx\service\UserService.java:42: 錯誤: 找不到符號
        return userDTO.getId();
                      ^
  符號:   方法 getId()
  位置: 型別為UserDTO的變數 userDTO

...

注: 某些輸入檔案使用或覆蓋了已過時的 API。
注: 有關詳細資訊, 請使用 -Xlint:deprecation 重新編譯。
注: 有關詳細資訊, 請使用 -Xlint:unchecked 重新編譯。
86 個錯誤

> Task :compileJava FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':compileJava'.
> Compilation failed; see the compiler error output for details.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 9s 

解決方法:

compile 'org.projectlombok:lombok'

改成:

compile 'org.projectlombok:lombok'
annotationProcessor 'org.projectlombok:lombok'

gradle專案使用lombok,打包出現getter setter無法找到