基于Maven 运行OpenRewrite的快速示例

本篇介绍一个基于Maven 运行OpenRewrite 的快速示例,展示了如何在Maven项目中使用OpenRewrite 进行代码重构。

本篇达成的效果是使用OpenRewrite 对源码自动格式化。

达成效果期望

项目中有一个类AutoFormatDemo ,类的代码如下

复制代码
public class AutoFormatDemo {public static void main(String[]args){System.out.println("Hello, World!");}}

使用OpenRewrite 自动格式化上面的代码。

步骤

  1. 在Maven项目中已经添加OpenRewrite Maven插件, 具体是在pom.xml 的<plugins> 节点添加插件

    <plugin> <groupId>org.openrewrite.maven</groupId> <artifactId>rewrite-maven-plugin</artifactId> <version>5.34.1</version> </plugin>
  • 这里的version 可以配置使用最新的版本

命令行运行mvn rewrite:discover 可以查看所有可执行的配方列表, 执行的效果如下:

  1. 激活配方

在运行任何配方之前,需要更新插件配置以将所需配方标记为"active"。

OpenRewrite 官方提供了代码格式化的配方 org.openrewrite.java.format.AutoFormat。关于该配方的详细介绍可以参考:
OpenRewrite配方之代码格式化------org.openrewrite.java.format.AutoFormat

要激活这个配方,可以在pom.xml 中将插件的配置修改为:

复制代码
<plugin>
  <groupId>org.openrewrite.maven</groupId>
  <artifactId>rewrite-maven-plugin</artifactId>
  <version>5.34.1</version>
  <configuration>
    <activeRecipes>
      <recipe>org.openrewrite.java.format.AutoFormat</recipe>
    </activeRecipes>
  </configuration>
</plugin>
  1. 运行配方
    上面激活配方之后, 接下来就可以运行了。在命令行输入如下命令:

    mvn rewrite:run

执行过程中,控制台会输出如下信息:

查看原来的代码,会被格式化成如下:



相关推荐
KevinCyao17 小时前
安卓android视频短信接口怎么集成?AndroidStudio视频短信开发指南
android
心勤则明17 小时前
Spring AI Alibaba Skills 的渐进式披露与热更新实战
java·后端·spring
netyeaxi18 小时前
Spring:如何查看Spring应用对外提供了哪些API接口?
java·spring
一只大袋鼠18 小时前
MySQL 事务从入门到精通(上):概念、操作、特性、隔离级别全解析
java·mysql·事务
若鱼191918 小时前
JPA/Hibernate中一对一关联时不持有外键方的属性延迟加载为什么不生效?
java·spring
砍材农夫18 小时前
spring-ai 第八模型介绍-图像模型
java·人工智能·spring
Android出海18 小时前
安卓侧载强制24小时冷却,第三方APK直投买量面临停摆
android·google play·app出海·android出海·android侧载·谷歌开发者·android开发者
kerli18 小时前
Compose 组件:LazyColumn 核心参数与 key/contentType 详解
android·前端
橘子hhh18 小时前
Netty基础服务器实现
java·nio
墨雪遗痕18 小时前
工程架构认知(二):从 CDN 到 Keep-Alive,理解流量如何被“消化”在系统之外
java·spring·架构