国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

IDEA利用jclasslib 修改class文件的實現

瀏覽:138日期:2024-07-23 10:20:43
idea安裝jclasslib-bytecode-viewer插件

file?>settings?>plugis ,搜索安裝jclasslib-bytecode-viewer,重啟idea。

IDEA利用jclasslib 修改class文件的實現

準備好class文件

把要修改的class文件用idea打開。

使用jclasslib

view?>show bytecode with jclasslib.常量池,使用過濾器過濾文本。找到對應的指向數字。

IDEA利用jclasslib 修改class文件的實現

IDEA利用jclasslib 修改class文件的實現

IDEA利用jclasslib 修改class文件的實現

使用下列代碼更改內容。

package com.yys.screendisplay.controller;import java.io.*;import com.sun.org.apache.bcel.internal.classfile.ConstantString;import org.gjt.jclasslib.io.ClassFileWriter;import org.gjt.jclasslib.structures.ClassFile;import org.gjt.jclasslib.structures.Constant;import org.gjt.jclasslib.structures.constants.ConstantDoubleInfo;import org.gjt.jclasslib.structures.constants.ConstantUtf8Info;import org.gjt.jclasslib.structures.constants.ConstantStringInfo;public class Test { public static void main(String[] args) throws Exception { String filePath = 'C:UsersHMSDesktopAppService.class'; FileInputStream fis = new FileInputStream(filePath); DataInput di = new DataInputStream(fis); ClassFile cf = new ClassFile(); cf.read(di); Constant[] infos = cf.getConstantPool(); int count = infos.length; for (int i = 0; i < count; i++) { if (infos[i] != null) { if(i==1813){ System.out.print(i); System.out.print(' = '); System.out.print(infos[i].getVerbose()); System.out.print(' = '); System.out.println(infos[i]); System.out.println(infos[i].getClass().getSimpleName()); ConstantUtf8Info uInfo = (ConstantUtf8Info)infos[i];//根據對應的類型轉換 uInfo.setString(''); infos[i]=uInfo; } } } cf.setConstantPool(infos); fis.close(); File f = new File(filePath); ClassFileWriter.writeToFile(f, cf); }}其他

對應的jar包可以在idea安裝的插件里面找。

IDEA利用jclasslib 修改class文件的實現

報java.lang.ClassNotFoundException: kotlin.jvm.internal.Reflection,加上

<dependency> <groupId>com.fasterxml.jackson.module</groupId> <artifactId>jackson-module-kotlin</artifactId> <version>2.9.4.1</version></dependency>

到此這篇關于IDEA利用jclasslib 修改class文件的實現的文章就介紹到這了,更多相關IDEA jclasslib 修改class內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: IDEA
相關文章:
主站蜘蛛池模板: 鄢陵县| 永昌县| 柏乡县| 吉林省| 尼木县| 姜堰市| 黄大仙区| 济阳县| 龙里县| 鸡东县| 比如县| 琼中| 临西县| 庄河市| 顺义区| 徐汇区| 沂南县| 小金县| 大连市| 固始县| 吴堡县| 中阳县| 长春市| 山东| 黔西| 徐水县| 文山县| 莒南县| 凉城县| 红桥区| 隆尧县| 阿鲁科尔沁旗| 德化县| 肇源县| 玛沁县| 昌宁县| 福建省| 渑池县| 阿城市| 惠来县| 扎鲁特旗|