Lombok编译器Maven插件


Kotlin Lombok 编译器插件允许 Kotlin 代码在同一个混合 Java/Kotlin 模块中生成和使用 Java 的 Lombok 声明。如果您从另一个模块调用此类声明,则不需要使用此插件来编译该模块。

Lombok 编译器插件无法取代Lombok,但它可以帮助 Lombok 在混合 Java/Kotlin 模块中工作。因此,在使用该插件时,您仍然需要像往常一样配置Lombok。

支持的注释
该插件支持以下注释:

  • @Getter,@Setter
  • @Builder
  • @NoArgsConstructor,@RequiredArgsConstructor, 和@AllArgsConstructor
  • @Data
  • @With
  • @Value

要使用 Lombok 编译器插件,请在 compilerPlugins 部分添加 lombok 插件,并在 dependencies 部分添加依赖 kotlin-maven-lombok。如果使用 Lombok 配置文件 lombok.config,请在 pluginOptions 中为插件提供路径。在 pom.xml 文件中添加以下几行:

<plugin>
    <groupId>org.jetbrains.kotlin</groupId>
    <artifactId>kotlin-maven-plugin</artifactId>
    <version>${kotlin.version}</version>
    <configuration>
        <compilerPlugins>
            <plugin>lombok</plugin>
        </compilerPlugins>
        <pluginOptions>
            <option>lombok:config=${project.basedir}/lombok.config</option>
        </pluginOptions>
    </configuration>
    <dependencies>
        <dependency>
            <groupId>org.jetbrains.kotlin</groupId>
            <artifactId>kotlin-maven-lombok</artifactId>
            <version>${kotlin.version}</version>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.20</version>
            <scope>provided</scope>
        </dependency>
    </dependencies>
</plugin>