安装了lombok没有加载出来(Lombok的介绍及安装)
安装了lombok没有加载出来(Lombok的介绍及安装)当使用任何javac(1.6 - 1.8版本)进行编译时,只需将lombok放在类路径中:javac -cp lombok.jar ....JDK 1.6 - 1.8或在后续版本中没有模块支持JDK9 ,假设你将自己的项目模块化(你已经编写了一个module-info.java文件):javac -cp lombok.jar -p lombok.jar ...注意,你必须将lombok添加到你的module-info.java文件中:module myapp { requires static lombok; }“static”部分确保你不需要lombok在运行时出现。
简介Lombok是一个java库,它可以自动插入到编辑器和构建工具中,从而简化我们的ava代码。不用再重新编写getter和equals方法。通过在类上添加注释,可以使类带有功能全面的生成器,自动化的日志记录变量等等。
总之一句话Lombok是一个通过在类上添加注解来简化我们的java代码,避免编写一些觉得相对比较臃肿的代码的工具包。
原理Lombok本质上就是一个实现了“JSR 269 API”的程序。在使用javac的过程中,它产生作用的具体流程如下:
- javac对源代码进行分析,生成了一棵抽象语法树(AST)
- 运行过程中调用实现了“JSR 269 API”的Lombok程序
- 此时Lombok就对第一步骤得到的AST进行处理,找到@Data注解所在类对应的语法树(AST),然后修改该语法树(AST),增加getter和setter方法定义的相应树节点
- javac使用修改后的抽象语法树(AST)生成字节码文件,即给class增加新的节点(代码块)
- 基于编译环境
JDK9 与 module-info.java
支持JDK9 ,假设你将自己的项目模块化(你已经编写了一个module-info.java文件):
javac -cp lombok.jar -p lombok.jar ...
注意,你必须将lombok添加到你的module-info.java文件中:
module myapp {
requires static lombok;
}
“static”部分确保你不需要lombok在运行时出现。
JDK 1.6 - 1.8或在后续版本中没有模块
当使用任何javac(1.6 - 1.8版本)进行编译时,只需将lombok放在类路径中:javac -cp lombok.jar ....
如果您还没有将自己的项目模块化(还没有module-info.java),那么从1.16.20版本开始,lombok中就包含了对JDK9的支持。就像平常一样使用lombok:javac -cp lombok.jar ...
如果你模块化了你自己的项目(你已经写了一个module-info.java文件),那么对JDK9的支持:
javac -cp lombok.jar -p lombok.jar ...
注意,你必须将lombok添加到你的module-info.java文件中:
module myapp {
requires static lombok;
}
“static”部分确保你不需要lombok在运行时出现。
- 基于构建工具
Maven
要使用任何构建工具设置lombok,您必须指定lombok依赖关系是编译源代码所必需的,但在运行/测试/冲突/以其他方式部署代码时不需要出现。通常这被称为“provided”依赖。
Lombok可以在maven central中使用,因此告诉maven下载Lombok很容易。
- 将lombok添加到pom文件中
要将lombok作为一个“provided”依赖,请将它添加到<dependencies>块中,如下所示:
<dependencies>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.16</version>
<scope>provided</scope>
</dependency>
</dependencies>
- JDK9 与 module-info.java
编译器插件的配置应该包含以下内容:
<annotationProcessorPaths>
<path>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.16</version>
</path>
</annotationProcessorPaths>
- Delomboking:Lombok Maven插件
如果你想通过Maven使用delombok,我们推荐你使用一个Maven插件。如果您想在lombok应用之后在源代码上运行源代码分析工具,或者您想生成javadoc,这是很有用的。这个插件是开源的。阅读更多关于lombok maven插件的信息(http://awhitford.github.io/lombok.maven/lombok-maven-plugin/)。
Gradle
要使用任何构建工具设置lombok,您必须指定lombok依赖关系是编译源代码所必需的,但在运行/测试/冲突/以其他方式部署代码时不需要出现。通常这被称为“provided”依赖。
Lombok可以在maven central中使用,因此告诉maven下载Lombok很容易。
- Lombok Gradle插件
有一个gradle插件,我们推荐你使用;它使部署变得轻而易举,并使执行附加任务(如delomboking)变得容易。这个插件是开源的。阅读更多关于gradle-lombok插件的内容(https://plugins.gradle.org/plugin/io.freefair.lombok)。
- 没有插件的Gradle
如果你不想使用插件,gradle有内置的compileOnly作用域,可以用来告诉gradle只在编译期间添加lombok。
您的build.gradle文件内容应如下:
repositories {
mavenCentral()
}
dependencies {
compileOnly 'org.projectlombok:lombok:1.18.16'
annotationProcessor 'org.projectlombok:lombok:1.18.16'
testCompileOnly 'org.projectlombok:lombok:1.18.16'
testAnnotationProcessor 'org.projectlombok:lombok:1.18.16'
}
请记住,如果您希望在eclipse中编程,您仍然必须下载lombo .jar(或在gradle的缓存中找到它)并将其作为jarfile运行。这个插件使这部分变得更容易。
- 安卓开发
有关将lombok与您的android开发集成的详细说明,请访问我们的android开发使用lombok页面(https://projectlombok.org/setup/android)。
- 基于开发IDE环境
- Eclipse Spring Tool Suite (Red Hat) JBoss Developer Studio MyEclipse
Eclipse编辑器与lombok兼容。Eclipse的分支也与lombok兼容,具体来说:
- MyEclipse
- Red Hat JBoss Developer Studio
- JBoss Developer Studio (JBDS)
- Spring Tools Suite (STS)
双击lombo .jar(可从本网站下载,或从maven库下载;这是同一个jar)。这将启动eclipse安装程序,它将查找eclipse(以及上面列出的eclipse分支),并提供将lombok安装到这些以已安装的eclipse中。同样的工具也可以卸载lombok:
lombok安装引导
您可以在eclipse的about对话框中检查您的eclipse安装是否启用了lombo。lombok版本将在版权文本的末尾列出:
about对话窗口
- 通过eclipse插件安装程序安装
警告:这个插件安装程序目前没有签名,我们已经放弃了解决这个问题的方法。
您可以直接从eclipse中安装lombok,通过这种方式,您还可以将lombok作为团队eclipse部署配置的一部分。为此,请使用更新站点https://projectlombok.org/p2:
选择安装
安装lombok
- IntelliJ IDEA
Jetbrains IntelliJ IDEA编辑器与lombok兼容。
添加Lombok IntelliJ插件,以增加对IntelliJ的Lombok支持:
- 导航至File > Settings > Plugins
- 点击Browse repositories...
- 搜索Lombok Plugin
- 点击Install plugin
- 重启IntelliJ IDEA
您还可以查看使用Eclipse和IntelliJ来设置Lombok,这是一篇关于相关博客文章(https://www.baeldung.com/lombok-ide)。