自由拓展已有代码的实现方法。可以实现诸如顶级方法、方法替换等功能
String text=$"My name is $ID.name ";//简单使用
String text=f"My age is ${%02d:ID.age} ";//带格式化的模板字符串
字符串插值功能构建在复合格式设置功能的基础之上,提供更具有可读性、更方便的语法,用于将表达式结果包括到结果字符串。
-
支持android、springboot、javaFX等所有使用java语言的项目(javac)
-
支持java8~java22
如何定义一个拓展方法?快速跳转至示例
ExMethodUtil
使用Gradle构建项目(点击展开)
Step 1.在你的根项目build.gradle
文件中进行如下操作
buildscript {
repositories {
maven { url 'https://jitpack.io' }
}
dependencies {
classpath 'com.github.122006.Zircon:gradle:3.2.3'
}
}
Step 2.在需要使用插件的module的build.gradle
首行引入插件apply plugin: 'zircon'
使用Maven构建项目(点击展开)
Step 1. 增加依赖 <dependency>
<groupId>com.github.122006.Zircon</groupId>
<artifactId>javac</artifactId>
<version>3.2.3</version>
<scope>provide</scope>
</dependency>
<dependency>
<groupId>com.github.122006.Zircon</groupId>
<artifactId>zircon</artifactId>
<version>3.2.3</version>
</dependency>
Step 2. 配置jitpack仓库
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
Step 3. 配置javac参数 -Xplugin:ZrExMethod -Xplugin:ZrString
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<compilerArgs>
<arg>-Xplugin:ZrExMethod</arg>
<arg>-Xplugin:ZrString</arg>
</compilerArgs>
</configuration>
</plugin>
- 点击 这里[ijplugin.zip]
进行下载(或目录中
/ijplugin/build/distributions/ijplugin-xxx.zip
文件) - 下载文件后拖动至idea中自动安装
For Windows & Linux - File > Settings > Plugins > Marketplace > Search for "Zircon" > Install Plugin > Restart IntelliJ IDEA
For Mac - IntelliJ IDEA > Preferences > Plugins > Marketplace > Search for "Zircon" > Install Plugin > Restart IntelliJ IDEA
- 请注意保持idea插件更新到最新。插件仓库审核有可能有滞后,请优先手动安装
- 支持java21、java22
- 优化项目编译结构
历史依赖更新
- 重构已有代码,提高编译性能及拓展性
- 使用gradle编译idea插件
- 支持jdk11、android30
- 支持内部代码段中使用不转义的引号
- 不再支持使用单引号转义双引号语法
- 支持使用gradle插件配置项目
- 重构以支持jdk16、jdk17
- 支持拓展方法
- 支持在成员方法引用中对外部引用调用拓展方法的情况
- 修复了一个导致编译时间过长的问题
- gradle插件支持使用id方式引入
- 修复一个特殊情况下与已有方法同名异参的会解析错误问题
- 修复强制覆盖原有实现方法时,使用方法引用会提示引用重复的问题
- 修复idea中使用Maven构建项目build错误的问题
- 重用已解析的参数类型提高编译速度。
- 修复罕见情况下的多层匿名类指向错误的问题
- 现在如果存在多个匹配的拓展方法实现,会自动使用路径最相近的实现
- 优化项目依赖结构
- 功能性优化
历史idea插件更新
- 支持
f-string
自动提示格式符及类型匹配错误 - 普通字符串支持自动识别转化为
$-string
- 模板字符串结构字符会用特殊颜色标出
- 修复启动后一段时间代码异常检查失效的问题
- 支持拓展方法
- 在未引入该项目的代码中,不再提示模板字符串功能
- 拓展方法显示优化
- 拓展方法显示优化
- 拓展方法自动引包相关支持
- 支持在成员方法引用中对外部引用调用拓展方法的情况
- 在idea 203以上版本支持了拓展方法引用处点击跳转。203以下版本会跳转到代理对象
- 重构了拓展方法及自动提示。现在已支持代理泛型推断及泛型数组推断
- 增强了模板字符串和拓展函数的联合效果。使用拓展函数支持自动引包
- 修复idea2023.3版本的兼容性问题
- 当输入于变量后自动补全时,不再提示其静态方法
- 修复部分问题
- 强化自动补全功能对代理类泛型的支持
- 强化自动补全功能对代理类泛型的支持:优化泛型继承解析
项目ExMethodUtil封装了常见的java工具方法,可用于体验或者测试拓展方法功能。
Zircon主体项目中不包含任何预定义的拓展方法,你可以引入该项目快速体验Zircon
implementation 'com.github.122006:ExMethodUtil:1.1.3'