我的build.gradle文件通过以下方式将Lombok添加为依赖项:
compileOnly 'org.projectlombok:lombok'
annotationProcessor 'org.springframework.boot:spring-boot-configuration-processor'
annotationProcessor 'org.projectlombok:lombok'
这对于所有“正常”的应用程序代码来说都很好--但是在测试中,如果我尝试使用任何Lombok注解,我会得到它不可用的错误。
为什么呢?我认为测试编译类路径应该从常规类路径扩展-因为它需要对所有常规代码进行广泛的测试?
不断变化
compileOnly 'org.projectlombok:lombok'
至
implementation 'org.projectlombok:lombok'
使错误消失-但我想了解为什么测试类路径不扩展/继承常规类路径?
1条答案
按热度按时间3phpmpom1#
答案是:compileOnly在测试时不起作用,这就是为什么你需要在测试时添加依赖关系。
所以这里链接到文档lombok https://projectlombok.org/setup/gradle
这是文本的副本:不带插件的Gradle如果您不想使用插件,gradle具有内置的compileOnly作用域,可用于指示gradle仅在编译期间添加lombok。您的build.gradle将如下所示:
这是gradle文档的链接。测试是如何形成的。https://docs.gradle.org/current/userguide/java_library_plugin.html#sec:java_library_configurations_graph