我正在尝试安装联合广告在 Ubuntu 14.10 上。
我已经下载了适用于 Intel 平台上 Linux 的 Jad 1.5.8e。我已解压 jad158e.linux.intel.zip 文件,正在阅读 Readme.txt 文件,其中说明如何安装:
1. Installation.
Unzip jad.zip file into any appropriate directory on your hard drive.
This will create two files:
- an executable file named 'jad.exe' (Windows *)
or 'jad' (*n*x)
- this README file
No other setup is required.
然后使用它它会说:
2. How to use Jad
To decompile a single JAVA class file 'example1.class'
type the following:
jad example1.class
我尝试通过使用 cd 命令在终端中找到它,然后使用以下命令执行 zip 中的 jad 文件:
./jad
但这只能得到这个结果:
./jad: error while loading shared libraries: libstdc++-libc6.2-2.so.3: cannot open shared object file: No such file or directory
我也尝试过按照说明中所述找到我想要反编译的文件,cd
然后执行以下操作:
jad MyJavaApplication.class
但返回的只是这个错误:
No command 'jad' found, but there are 17 similar ones
jad: command not found
我仔细查看了几个论坛,例如这个还有这个 askubuntu 问题如何安装 Jad?。但我还是没能让 JAD 工作。我甚至尝试按照我上面提到的论坛之一的建议安装 Gdebi。但无论我做什么,似乎都无法让它工作。所以我真正的问题是,如何安装和使用 JAD?
我听说要将它添加到 PATH 变量中,我需要将它移动到这个目录 /usr/local/bin,但是当将它移动到该目录时,它告诉我需要更多权限,即使我是管理员。我不确定如何将它添加到 PATH 变量中。
答案1
libstdc++-libc6.2-2.so.3
问题的“解决方法”
似乎 JAD 的最后一次更新是在 2001 年,并且是针对 Linux 2.0.0 编译的。JADlibstdc++-libc6.2-2.so.3
引用的依赖项可能不再存在...(好吧,它可能确实存在于某个地方,但安装和使用它会很麻烦!)
好消息是,在“Jad 1.5.8e for Linux on Intel platform”下载下面有一个可用的静态链接版本(“Jad 1.5.8e for Linux(静态链接)”),其中包含所有必需的依赖项并且不需要在您的系统上安装任何东西。因此它可以在任何兼容 i386 的 Linux 系统上运行!我在我的 64 位 Linux 系统上试过,它就可以运行。
问题jad: command not found
运行的问题jad MyJavaApplication.class
是它要求 JAD 位于您的应用程序搜索路径中。因此您可以:
cd
到 JAD 目录,输入export PATH="${PWD}:${PATH}"
,然后到包含jad MyJavaApplication.classcd
的目录`*.class* file(s) and run
bin
在您的主目录中创建一个名为 的目录,并将jad
二进制文件复制到那里。然后打开一个新终端,cd
进入包含*.class*
文件的目录并运行jad MyJavaApplication.class
。(您只需复制文件jad
一次!)- 使用以下命令将文件移动
jad
到您的/bin
目录中:sudo cp /path/to/jad/executable/file /bin
。
- 使用以下命令将文件移动
注意:JAD 于 2001 年推出,是针对 Java 1.5/Java 5 开发的,目前我们使用 Java 7,而 Java 8 即将推出,预计在反编译现代 Java 文件时会出现问题!
如果这对您有用,请不要忘记投票,并将其标记为已接受的答案!
答案2
对于第一个问题,你可以static jad
从此处下载关联,所以什么都不需要。对于第二个问题,您只需执行 即可./jad file.class
。