IDEA JarEditor編輯jar包方式(直接新增,修改,刪除jar包內的class文件)
之前我們需要修改jar內文件的時候需要解壓jar包,反編譯class,新建java源文件,修改代碼,再編譯成class,替換jar包內的class文件。
現(xiàn)在利用IDEA的修改jar插件JarEditor可以直接修改class文件,一氣呵成。
https://plugins.jetbrains.com/plugin/24397-jareditor
1. 安裝插件 JarEditor
File -> Settings -> Plugins

2. 在IDEA中添加外部JAR包

如果jar包在idea的External Libraries中不存在,外部文件可以通過File->Project Structure->Libraries添加。

3. JarEditor 使用介紹
在具體jar的目錄下右鍵,可以做如下操作:

下面做一些演示。
- 在jar內新增文件

package org.apache.commons.lang3;
public class XinliushijianTest {
public static String SMILE = "HAHAHA!!!";
public XinliushijianTest() {
}
public static String xinliushijianTest() {
return "xinliushijian";
}
}- 在jar包內修改文件

- 讓新增、修改的文件生效

如上圖,從左到右依次點擊。
- 1. 切換到Jar Editor tab頁
- 2. 選擇JDK版本
- 3. 編譯修改的java內容,并保存
- 4. 將修改的class內容重新打包進jar包
Save/Compile會將修改的文件保存到jar包所在目錄的jar_edit子目錄下,Build Jar會把會jar_edit目錄的文件增量寫入jar,最后再刪除這個目錄
- 測試新增、修改的文件是否可以使用
import org.apache.commons.lang3.RandomUtils;
import org.apache.commons.lang3.XinliushijianTest;
public class StringDemo11 {
public static void main(String[] args) {
String result = XinliushijianTest.xinliushijianTest();
System.out.println("result: " + result);
String result1 = RandomUtils.xinliushijianTest();
System.out.println("result1: " + result1);
System.out.println(XinliushijianTest.SMILE);
}
}- 打印
result: xinliushijian
result1: 心流時間
HAHAHA!!!
總結
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
一文搞懂Mybatis中Mapper配置文件獲取參數(shù)的五種方式
這篇文章主要介紹了Mybatis中Mapper配置文件獲取參數(shù)的五種方式,文中通過代碼示例講解的非常詳細,對大家的學習或工作有一定的幫助,需要的朋友可以參考下2024-03-03
mybatis如何使用xml中的if-else/choose
最近需要使用xml文件來實現(xiàn)一些增刪改查,此文對其中的if-else 加以說明,使用 xml 怎么來使用和接收呢,下面小編給大家講解mybatis如何使用xml中的if-else/choose,感興趣的朋友一起看看吧2024-04-04

