5 command-line software-installation
我正在尝试在 Ubuntu 14.10 上安装JAD。
我已经在 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.
Run Code Online (Sandbox Code Playgroud)
然后使用它说:
2. How to use Jad
To decompile a single JAVA class file 'example1.class'
type the following:
jad example1.class
Run Code Online (Sandbox Code Playgroud)
我已经尝试通过使用 cd 命令在终端中找到它,然后使用以下命令执行它来执行 zip 中的 jad 文件:
./jad
Run Code Online (Sandbox Code Playgroud)
但这只会让我得到这个结果:
./jad: error while loading shared libraries: libstdc++-libc6.2-2.so.3: cannot open shared object file: No such file or directory
Run Code Online (Sandbox Code Playgroud)
我还尝试通过定位它cd然后执行以下操作来定位我想反编译的文件,就像说明中所说的那样:
jad MyJavaApplication.class
Run Code Online (Sandbox Code Playgroud)
但所有返回的是这个错误:
No command 'jad' found, but there are 17 similar ones
jad: command not found
Run Code Online (Sandbox Code Playgroud)
我很好地看了几个论坛,例如this one和this askubuntu question How to install Jad?. 但我仍然无法让 JAD 发挥作用。我什至尝试按照我上面提到的论坛之一中的建议安装 Gdebi。但无论我做什么,我似乎都无法让它发挥作用。所以我的问题是,我如何安装和使用 JAD?
我听说将它添加到 PATH 变量中,我需要将它移动到这个目录 /usr/local/bin,但是当它移动到那个目录时,它告诉我,即使我是那个管理员,我也需要更多的权限。而且我不确定如何将它添加到 PATH 变量中。
“解决方法”的libstdc++-libc6.2-2.so.3问题
JAD 的最后一次更新似乎是从 2001 年开始的,并且是为 Linux 2.0.0 编译的。libstdc++-libc6.2-2.so.3JAD 引用的依赖可能已经不存在了……(好吧,它可能确实存在于某个地方,但安装和使用它会很麻烦!)
好消息是,在“英特尔平台上的 Linux 的 Jad 1.5.8e”下载下方有一个可用的软件的静态链接版本(“Linux 的 Jad 1.5.8e(静态链接)”),其中包括所有必需的依赖项,并且不需要在您的系统上安装任何东西。因此它可以在任何 i386 兼容的 Linux 系统上工作!我在我的 64 位 Linux 系统上尝试过,它可以正常工作。
该jad: command not found问题
运行的问题jad MyJavaApplication.class在于它要求 JAD 位于您的应用程序搜索路径中。这样你就可以:
cd到 JAD 目录,键入export PATH="${PWD}:${PATH}",然后cd到包含您的*.class* file(s) and runjad MyJavaApplication.class`的目录
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 文件时预计会出现问题!
如果这对您有用,请不要忘记投票,将其标记为已接受的答案!