Lombok 官方文档
原理:根据实体类上的注解,生成一个新的实体类。然后再进行编译
官方文档地址:https://projectlombok.org/features/
文档首页:
======================================================================================================
val
- Finally! Hassle-free final local variables.
@NonNull
- or: How I learned to stop worrying and love the NullPointerException.
@Cleanup
- Automatic resource management: Call your
close()
methods safely with no hassle. @Getter
/@Setter
- Never write
public int getFoo() {return foo;}
again. @ToString
- No need to start a debugger to see your fields: Just let lombok generate a
toString
for you! @EqualsAndHashCode
- Equality made easy: Generates
hashCode
andequals
implementations from the fields of your object. @NoArgsConstructor
,@RequiredArgsConstructor
and@AllArgsConstructor
- Constructors made to order: Generates constructors that take no arguments, one argument per final / non-null field, or one argument for every field.
@Data
- All together now: A shortcut for
@ToString
,@EqualsAndHashCode
,@Getter
on all fields, and@Setter
on all non-final fields, and@RequiredArgsConstructor
! @Value
- Immutable classes made very easy.
@Builder
- ... and Bob's your uncle: No-hassle fancy-pants APIs for object creation!
@SneakyThrows
- To boldly throw checked exceptions where no one has thrown them before!
@Synchronized
synchronized
done right: Don't expose your locks.@Getter(lazy=true)
- Laziness is a virtue!
@Log
- Captain's Log, stardate 24435.7: "What was that line again?"
- Configuration system
- Lombok, made to order: Configure lombok features in one place for your entire project or even your workspace.
- Experimental features
- Here be dragons: Extra features which aren't quite ready for prime time yet.
If you'd rather read a longer tutorial, here is a great tutorial (including a walkthrough through some of the above features) written by Michael Kimberlin.
The documentation above is a lot easier to follow, but if you want to build your own transformations, or you want to add javadoc to
lombok.jar
in your IDE, you can also check out the javadoc.Running Lombok
On eclipse
Execute lombok.jar (doubleclick it, or run java -jar lombok.jar). Follow instructions.
On javac (and maven, ant, and other build tools)
Include lombok.jar on the classpath as you compile. That's all there is to it!
Lombok hosts its own maven repository, so adding lombok to maven is very simple. full instructions are here.
On GWT (Google Widget Toolkit)
See gwt setup.
On javadoc, and other source-based tools
Use delombok first, then run javadoc or GWT on the delombok-ed code.
Running delombok
Delombok copies your source files to another directory,
replacing all lombok annotations with their desugared form. So, it'll
turn
@Getter
back into the actual getter. It then removes the annotation. This is
useful for all sorts of reasons; you can check out what's happening
under the hood,
if the unthinkable happens and you want to stop using lombok, you
can easily remove all traces of it in your source, and you can use
delombok to preprocess
your source files for source-level tools such as javadoc and GWT.
More information about how to run delombok, including instructions for
build tools
can be found at the delombok page.
越努力越幸运