Libvirt(http://libvirt.org/)是一个比较不错的虚拟化环境管理的工具包。核心用c实现,不过提供了不同语言的调用API。官网的简介如下:libvirtis:Atoolkittointe
libvirt is:
libvirt supports:
libvirt provides:
由于笔者我是一个简单而纯粹的Java程序员,所以自然只能依赖于libvirt的Java binding api。
作为一个源码控,我选择下载源码的方式验证使用:
源码的git地址如下:
git clone git://libvirt.org/libvirt-java.git
笔者下载源码后,直接构建了Eclipse的工程,当然你也可以用源码编译(ant)出一份jar来依赖:
cd libvirt-javaant build
libvirt也提供了Maven库:
没有Maven?可以直接从Maven库中下载Jar包:
这么多途径,相信你总可以搞到一份libvirt的源码或者Jar了吧。
由于libvirt的核心都是c写的,Java API只是帮助你封装了对动态链接库(dll)文件的本地调用,所以现在应该做的是安装dll文件。
libvirt官网提供了自行编译dll文件的脚本:
MSYS Build script
The easiest way is to use the msys_setup script, developed by Matthias Bolte. This is actively developed and kept current with libvirt releases:
https://github.com/photron/msys_setup
不过笔者并没有尝试该种方式,因为libvirt官网也提供了windows下的安装包:
Experimental installation package
A windows installation package is in development. An experimental version is available here:
It is not production ready.(注:其并不是已经发布的产品)
该安装包中不仅包含了需要的dll文件,还提供了一个方便好用的virsh-shell 命令行工具,通过命令可以调用libvirt的所有接口(查看,管理虚拟机等。),对于我们的开发调试是非常有帮助的。
安装完成后,香港虚拟主机,想让Java API找到dll文件,还需要指定jna路径,有两种方式,一种是直接设置系统环境变量:
另一种是可在程序中动态指定,笔者选择了后者,香港虚拟主机,比较灵活简单,编写测试代码如下:
是不是还是找不到dll?报异常?
原来他是搜索叫virt的dll文件。
查看源码:
确实如此,将libvirt-0.dll改名为virt.dll。结果终于出来了。
注:libvirt的Java API封装的比较直观,上手很容易,其入口就是Connect 这个连接类,获取连接后,即可对虚拟机环境进行查看和管理操作。笔者后续会奉上Java API详细使用介绍。
本文出自 “苦逼coder” 博客,谢绝转载!,网站空间