如何dump出一个Java进程里的类对应的class dump 使用文件

小白求助,如何把反编译后的 .java文件再变回 .class文件_java吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:611,974贴子:
小白求助,如何把反编译后的 .java文件再变回 .class文件收藏
我想把一个jar包(只有一个包无其他东西)里的class,进行修改和添加自己想要的class,按教程反编译完成之后生成了一个Java 文件。之后改怎么做~~谢谢各路大神
零元首付,先就业后付款,我赢职场java吉安 年薪30万的java吉安高级工程师授课java吉安,案例式教学,教你3个月轻松搞定java开发!
老铁们帮个忙解答一下。。。
登录百度帐号推荐应用
为兴趣而生,贴吧更懂你。或java里如何判断一个class文件是否被重新装载?
如标题。谢谢。
请定义清晰一下什么叫做“重新装载”?
一个classloader,对于同一个全限定类名(full qualified class name)的类装载请求,只会装载一次;装载好之后,该class就以一个class对象的形式存在于内存中;从此该classloader不会再去装载该类第二次;
且只要该classloader本身还存在于内存中,那么被他所加载的类就是不会被丢掉的的;想要丢掉那些已经被加载的类,那只能把这些类连同这个classloader一齐丢掉;
不知道你所说的重新加载是什么意思?是指第一次加载后的classloader和class都被丢掉了之后,第二次又由另一个不同的classloader加载了这个类么?
--- 共有 1 条评论 ---
@了一下你,期待你的解答。谢谢。
在类的static块里面写代码,类被装载的时候会运行,就是,类被重新装载的情况不多见
再装一次报错说明已经装过
@&&那请问这段话如何理解?
--- 共有 2 条评论 ---
: 我觉得应该是同一个类的,比如一个项目里,热启动的次数多了的话就会报Perm内存溢出。一个项目里的类应该是相对固定了的吧。
表示内存中加载的类过多,这通常不是同一个类被加载多次造成的,而是很多很多不同的类被加载造成的,你应该通过参数调整PermGen的大小
引用来自“yangzhiyong”的答案
@&&那请问这段话如何理解? 回复
: 那说明这个热加载做得不完善,或者你们的程序通过某种方式长期持有了想要被热替换的类实例;因为热加载的原理是,将原来加载的类,连同其classloader一起扔掉(也就是断掉所有与其的引用); 这时候如果热加载机制不完善,这种引用扔不干净,那么老的类就会还会继续存在于内存中,然后同样一个类被不同的(注意,是“不同的”)classloader加载到内存中,实际上这个类被两个不同的classloader加载了共2份到内存中;这种情况一多,就会慢慢消耗掉permGen,导致永生代OOM; 至于具体是哪个类在内存中占据大量资源,以及哪里长期持有了这些类的引用,你可以使用jmap -heap命令观察永生代大小,在它快要OOM的时候,用jmap -dump命令导出其内存,然后使用MAT来分析其引用情况,从而找出问题
--- 共有 3 条评论 ---
: 积累前辈的方法。类加载机制已经掌握,但是还没有像前辈说的这样分析过永久代进而查出热加载的不足,优化代码。
: 只要是java程序,都可以向这么分析;tomcat也是java程序
它是Tomcat。。。。
在一个classloader中只能装载某个class一次,这是java的安全铁律
--- 共有 1 条评论 ---
严格地说是在一条委派链上的classloader只会装载同一个class一次且仅一次欢迎加入我们,一同切磋技术。 &
用户名: &&&
密 码: &
共有 4048 人关注过本帖
标题:一个JAVA程序编译成几个.CLASS
我该怎么运行呢?
等 级:新手上路
帖 子:32
&&问题点数:0&&回复次数:6&&&
一个JAVA程序编译成几个.CLASS
我该怎么运行呢?
一个JAVA程序中有几个类,我在编译生成.CLASS文件的时候,也是生成几个,那我该怎么运行这个程序,的到我想要的结果呢!!!
如果是应用程序的话, 有MAIN 方法的怎么运行出结果呢,是在命令提示符下输入主.CLASS文件呢,还是别的方法……
如果是小应用程序的话, 在WEB环境下运行,用APPLET标签引用, 那我该怎么去引用这些类文件呢,谢谢!!!
我不给程序了,比喻说:
WORD.JAVA文件生成了 三个.CLASS文件,WORD.CLASS
WORD2.CLASS
WORD3.CLASS
我怎么运行这些.CLASS文件,的到我想要的结果呢,上面两中情况都有,谢谢各位前辈!!!!
搜索更多相关主题的帖子:
&&&&&&&&&&
来 自:冰封王座
等 级:贵宾
威 望:12
帖 子:1894
你的main()在哪个class里面就运行那个,比如假设在Word.java里面,到cmd下,输入:javac Word.java(回车)java Word(回车)
I'm here, as always...
等 级:新手上路
帖 子:32
但 如果是小应用程序了,也就是 WEB中的,那应该怎么有APPLET引进呢 ??
谢谢不吝赐教!!!
来 自:冰封王座
等 级:贵宾
威 望:12
帖 子:1894
在html文件里面加入&applet code="Word.class" width=350 height=150&&/applet&红色部分就是你要用的applet的名字
I'm here, as always...
等 级:版主
威 望:60
帖 子:2959
专家分:652
一切都是按主類算。
等 级:新手上路
帖 子:136
主类当然做主啦!
^_^没事咱就灌水哈^_^!!!
来 自:湖南长沙
等 级:黑侠
帖 子:166
专家分:505
javac 类名.java
版权所有,并保留所有权利。
Powered by , Processed in 0.050268 second(s), 8 queries.
Copyright&, BCCN.NET, All Rights Reserved

我要回帖

更多关于 ios class dump 的文章

 

随机推荐