Topic: 我想打开一个.jar,改动一点,然后再封起来,应该怎样做? |
Print this page |
1.我想打开一个.jar,改动一点,然后再封起来,应该怎样做? | Copy to clipboard |
Posted by: JAVACAT Posted on: 2004-08-27 08:30 我拿到一个jar包,对它不太满意,想打开,对里面的内容做小小改进,再重新打回jar包。请问哪位高人有这方面的经验,请教用哪些工具好。 |
2.Re:我想打开一个.jar,改动一点,然后再封起来,应该怎样做? [Re: JAVACAT] | Copy to clipboard |
Posted by: lordofring Posted on: 2004-08-27 09:28 用jar命令就可以了。 |
3.Re:我想打开一个.jar,改动一点,然后再封起来,应该怎样做? [Re: JAVACAT] | Copy to clipboard |
Posted by: kanlou Posted on: 2004-08-27 09:39 这样用: 用法:jar {ctxu}[vfm0Mi] [jar-文件] [manifest-文件] [-C 目录] 文件名 ... 选项: -c 创建新的存档 -t 列出存档内容的列表 -x 展开存档中的命名的(或所有的〕文件 -u 更新已存在的存档 -v 生成详细输出到标准输出上 -f 指定存档文件名 -m 包含来自标明文件的标明信息 -0 只存储方式;未用ZIP压缩格式 -M 不产生所有项的清单(manifest〕文件 -i 为指定的jar文件产生索引信息 -C 改变到指定的目录,并且包含下列文件: 如果一个文件名是一个目录,它将被递归处理。 清单(manifest〕文件名和存档文件名都需要被指定,按'm' 和 'f'标志指定的相同顺序。 示例1:将两个class文件存档到一个名为 'classes.jar' 的存档文件中: jar cvf classes.jar Foo.class Bar.class 示例2:用一个存在的清单(manifest)文件 'mymanifest' 将 foo/ 目录下的所有 文件存档到一个名为 'classes.jar' 的存档文件中: jar cvfm classes.jar mymanifest -C foo/ . |
4.Re:我想打开一个.jar,改动一点,然后再封起来,应该怎样做? [Re: JAVACAT] | Copy to clipboard |
Posted by: dearmeiw Posted on: 2004-08-27 10:29 用WINRAR打开改完了再塞进去就OK了,呵呵! |
5.Re:我想打开一个.jar,改动一点,然后再封起来,应该怎样做? [Re: JAVACAT] | Copy to clipboard |
Posted by: joelwx Posted on: 2004-08-27 11:01 你所说的改动是什么意思?? 如果要重新编译文件的话,那就要反编了(当然这是在你没有源文件的情况下) 改完了再打回JAR就可以用了 |
6.Re:我想打开一个.jar,改动一点,然后再封起来,应该怎样做? [Re: dearmeiw] | Copy to clipboard |
Posted by: floater Posted on: 2004-08-27 11:24 dearmeiw wrote: be careful the path in the jar. |
7.Re:感谢指教!还有点不问题 [Re: JAVACAT] | Copy to clipboard |
Posted by: JAVACAT Posted on: 2004-08-27 11:24 这个jar命令是把.class文件打包的吧?我这个包里共有48个.class文件,用这种文本命令方式就太不方便了。 我的思路是:先把拿来的.jar包解开(做到了,得到48个.class文件和一个manifest.mf文件);把需要改的.class文件反编译得到.java文件并改进(这也做到了);然后就有问题了:我想有两种方法:一个是单独把改过的.java文件先编译成.class文件,再和其他的.class一起打包,但是单独编译这个.java老出错(因为这个class调用别的class)。还有一个方法就是把全部.class都反编译成.java,然后一起编译,打包。但是也老出错。 请帮我分析一下,哪里出了问题?是思路问题还是方法问题?谢谢 |
8.Re:我想打开一个.jar,改动一点,然后再封起来,应该怎样做? [Re: JAVACAT] | Copy to clipboard |
Posted by: kam Posted on: 2004-08-27 11:50 幹嘛要反編譯那些class才放進去? 自己在project裏改了, make一次就ok啦 ^.^ |
9.慢点,我初学,不太明白。 [Re: JAVACAT] | Copy to clipboard |
Posted by: JAVACAT Posted on: 2004-08-27 11:58 恳请讲详细点,我初学,理解力差点。 不反编译怎么看到源代码呢? 你是说在project打开文件,是指.class文件? 用哪种编辑工具打开project比较好用? |
10.Re:用WINRAR打开改完了再塞进去就OK了 [Re: JAVACAT] | Copy to clipboard |
Posted by: JAVACAT Posted on: 2004-08-27 12:02 我说的改动是想改变一下界面的颜色形式等,很小的改动。 用WINRAR打开我会,但是再塞回去就不会了,怎样塞回去呢?请教 |
11.Re:我想打开一个.jar,改动一点,然后再封起来,应该怎样做? [Re: JAVACAT] | Copy to clipboard |
Posted by: kam Posted on: 2004-08-27 12:03 照你的意思, 那個jar不是你寫的, 只是拿別人的下來decompile後, 修改完再pack 成 jar 嗎? 那麼你全部decompile, 在自己的editor中修改完後 run 一次, ok後再 pack 成jar ^.^ p.s: decompile是用來學習, 不是用來偷用哦...^.^ |
12.Re:不想偷别人程序 [Re: JAVACAT] | Copy to clipboard |
Posted by: JAVACAT Posted on: 2004-08-27 23:56 是这样,我很喜欢一个网页,但是不喜欢它的颜色,这网页里带有java applet, 我就想把它的程序小改一下,还放回去,还是用来运行它的网页。还不知行不行,谢谢大家 |
13.Re:我想打开一个.jar,改动一点,然后再封起来,应该怎样做? [Re: JAVACAT] | Copy to clipboard |
Posted by: yung Posted on: 2004-08-30 14:51 用jar很麻烦的,还是用winzip吧,winzip总会用吧? 用winzip先解开包,修改完后,再压包,再改名为.jar ,就可以了 |
14.Re:我想打开一个.jar,改动一点,然后再封起来,应该怎样做? [Re: JAVACAT] | Copy to clipboard |
Posted by: seaboy Posted on: 2004-09-01 10:44 有时候反编译Jar,未必能成功。 |
Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1 客服电话 18559299278 客服信箱 714923@qq.com 客服QQ 714923 |