我们无论是直接从vuze网站上下的源代码还是通过SVN更新的Vuze全套源代码,全部都是JAVA代码。但是Vuze是通过Azureus.exe文件来启动的。
既然Vuze的代码里面全部都是java代码,丝毫没有涉及到exe文件,这个Azureus.exe文件又是从哪里来的,它的源代码又是什么呢。
其实那个Azureus.exe文件就是个JAVA包装器( java launcher),它的作用就是用来启动azureus2.jar,启动以后,整个Vuze就是靠azureus2.jar来运行,跟Azureus.exe无关了,其实,我们可以直接通过javaw命令运行azureus2.jar,效果跟用Azureus.exe来启动是一样的,也就是说Azureus.exe唯一的功能就是
用来启动azureus2.jar,功能简单,而且Azureus.exe是用别的工具来编写生成的,所以就没有Azureus.exe的源代码了
下载了Vuze0.9-4.0的各个版本,可以看出Azureus.exe的变化。
用peid查看Azureus.exe结果如下:
Vuze0.9的Azureus.exe 是用 Borland C++ 1999写的
Vuze2.0的Azureus.exe 是用FreeBasic 0.14来编写的,而且是个标准的自解压执行文件,用zip打开它可以看到里面封装了很多个class文件。
Vuze3.0-4.0 的Azureus.exe 用peid无法查出是用什么工具写成的,不过综合外国论坛的意见,并且根据Azureus.exe 的报错记录,认为它是用exe4j来写成的。
用UEdit打开Azureus.exe ,可以搜索到exe4j关键字,证明了这一看法
综合,最新版本的Vuze使用swt来绘制界面,而用了exe4j来生成最后的可执行文件