jar反编译打包
A. 防止jar被反编译——最简单的方法
在提供给他人使用的jar文件中,有时为了保护某些核心密钥不被他人通过反编译工具查看,除了使用第三方工具或maven插件等较为复杂的方法外,其实还存在一个简单直接的方法来防止特定类被反编译。
其核心思路在于,在目标类中嵌入一个匿名类,该匿名类永远不被调用,从而起到迷惑和防止反编译的作用。例如,若希望保护名为A的类,只需在A类中添加一个private的内部类即可。
具体操作步骤如下:
1. 对需要保护的类编写一个private内部类。
2. 打包成jar文件。
3. 使用压缩工具打开并查看jar文件。
4. 利用记事本打开目标class文件,即被保护的类。
5. 删除private类名称中的个别字符,使private名称发生改变。
通过上述步骤,被保护的class将无法被jude等反编译工具正常解析,从而达到防止反编译的目的。例如,假设目标是保护Info.java文件的内容,首先在Info类中添加一个private的内部类,然后通过压缩工具打开jar文件,接着用记事本打开对应的class文件,最后修改private类名称的个别字符,使其变更为不同的名称。这样,即使使用jude工具尝试反编译,也会因类名的变化而失败。
B. 如何将jar包反编译成项目
第一步 用反编译工具将jar 反编译
第二步 将反编译后的项目,保存成zip包
第三步 解压zip包,并将项目导入到项目中
用解压软件,这个很方便就不详细说了
第四步 将文件导入到项目中(注意因为是文件,不是完整的项目,所以先创建一个空的项目,用这种方式去导入文件)
第五步选择自己路径下的文件点击Resource Filters 即可
C. 怎样jar包直接反编译成java文件
使用现有的反编译工具或者自己写一个,jar包实际上是class文件打包的,class文件是二进制文件,使用流将class文件读入,然后转为字符再写入到文件中就完成反编译了。不过经过混淆过的jar包好像不能反编译。
D. jar包重新打包(java重新打包)
将源代码jar包修改,再打包,怎么做你首先要得到jar包里需要修改的class的源码,复制出来新建类,注意类名包名需要和之前一致。
该过程需要经历四个步骤:解压,反编译,修改,打包。解压:jar文件和我们平常的rar和zip文件一样是属于压缩文件,通过一般的解压缩工具(例如:winrar)都能解压。解压之后生成的文件为**.class的字节码文件。
可以将修改后的class文件直接覆盖以前的class文件,jar可以用压缩软件直接打开。
最简单的方法就是:使用rar,zip,好压等解压缩工具打开jar包,直接把修改的class文件拖进去,覆盖原来的class文件。麻烦的就是使用eclipse或java命令重新打包,不建议新手使用。
第一种修改jar包中的文件,用压缩工具打开,直接进行修改或替换就可以了。
利用jar命令更新jar包中文件或打包vimxxx.jar该命令首先会列出全部文件,可以通过输入/abc来搜索,定位到对应的abc文件后回车进入配置文件内进行编辑,:wq保存。
(4)打包:输入c:jarcvmfmenifest2HelloWorld.jarHelloWord.jarcom/,在c:盘下生成“HelloWorld.jar”。(5)执行:输入c:java-jarHelloWord.jar。屏幕回显“HelloWorld”。引用到外部jar包的java工程。
注意:不是解压),找到相对应的路径,然后直接把那个修改后的文件拖进去,替换原来没修改的那个。
以MyEclipse为示例。首先打开软件,创建工程如下图所示。步骤1后,为创建的javaProjection设置名称、位置、JRE等,如下图所示。最后点击finish。创建class文件如下图所示,在src文件夹上右键选择【New】-【class】。
你这样的做法,直接是不行的,JAR相当于一个压缩文件,你不能直接改他们的内容。只能是解压,再压缩。这样这个JAR不能被使用。在运行JAR的当前目录,创建文件。
你会学到写出短小的一个程序,通过运行java-jar命令或在像windows一样的操作系统里面用双击鼠标运行任何JAR文件。你可以很容易地把应用程序的一整套class文件和资源文件打包到一个JAR中。事实上这就是jar文件存在的一个目的。
linux怎么修改打包文件
1、IMG文件:因为cp,cat只能从设备来制作镜像,但又没有专用工具来做IMG文件,故这里用dd命令来制作IMG文件。
2、用参数-cvf打包directory目录及内容。用参数tf列出包内容。tvf列出包详细内容解包用xvf参数。打包、解包细节事项:2)、如果想把打包文件存放到其他地方,就要指定打包路径存放tar的打包文件。