JConfig是对核心java API的扩展library,它通过jni来调用各种平台下应用程序来取得核心java API无法直接获得的系统信息。它能帮助你创建一个高质量,可扩展的java应用
要使用JConfig,你必须确定JConfig能找到它运行时所需要的所有文件,并且你要适当的对JConfig进行初始化配置。如果你在安装时出现问题,请参考附带的例子和帮助文件来找到怎么初始化JConfig。附带的例子和程序在source/com/tolstoy/testjc这个目录下。
JConfig附带的文件:
1.JConfig.zip(适合所有平台)-包括适合所有平台的.class文件
2.jconfig.cfg,jcfactrz.txt,jcprops.txt(适合所有平台)-包括了配置信息,和一些支持文档
3.jcnfigSN.dll,jcnfigSW.sll,etc.(适用于windows平台)-windows DLLs
4.JConfig.shlb(适用于Mac平台)-Mac 公共的library
5.libjconfiglx0.so(适用于linux平台)Linux的公共library
使用JConfig包括三个基本步骤
1.确定jconfig。zip在classpath里。
2.确定jconfig能找到使用时的本地代码库
3.调用一个包括支持文件描述的本地目录文件对象的FileRegistry.initialize()方法
假设这个支持文件在你的应用目录下,你必须这样调用FileRegistry.initialize() 方法
curDir = new File( System.getProperty( "user.dir" ) );
FileRegistry.initialize( curDir, 0 );
注意:应用目录的权限必须是可写的。JConfig将创建一个临时文件在这个目录下面,直到程序不再需要时它会被自动删除掉。未来的版本可创建一个配置文件在应用目录下面
如果目录传给FileRegistry.initialize() 不包括所有的支持文件的话,JConfig将使用内部存储的默认值.但是,不要使用这种行为:确定目录下包括了所有的支持文件。如果JConfig不能找到这些文件中的任意一个的话,将会在控制台打印出一个警告信息,来说明文件不能被找到。如果出现警告信息,请检查目录下面是否包含了这些文件。
在source/com/tolstoy/testjc目录下,Tester.java程序包含了‘doubleCheckJConfigInitializationDirectory()’方法,你可以使用它来确定'jconfig.cfg' and 'jcfactrz.txt'存放在那个目录下。
如果这些支持文件能被发现,并且你的应用运行在一个支持的虚拟机上,JConfig将找到合适的本地代码库正确的初始化JConfig
但是,如果不能找到合适的本地代码库,JConfig将只能提供一套有限制的功能。在这个情况下JConfig将输出一个信息:that FileRegistryPlain has been loaded
更多细节:
JConfig有三种操作方式,这个要取决于它怎么初始化和在什么平台在运行
1.full mode: 所有的FileRegisty方法能想你期望的那样正常运行
2.fallbak mode:只有一部分FileRegisty方法能正常运行,多数会方法null或者-1
3.error mode:所有的FileRegisty方法都返回null或者-1
为了让JConfig能运行在full mode下,必须遵守下面的规则:
1.JConfig必须运行在一个被支持的平台下
2.JConfig必须被初始化,并且应用目录下包括了jconfig.cfg和jcfactrz.txt这两个文件。并且目录必须是可写的。
3.如果要使用本地代码库,JConfig必须能找到它
如果JConfig已经被正确的初始化了,并且能找到所有需要的文件,它将已full mode运行在它所支持的平台上,或者以fallback mode运行在一个不支持的平台上。(待续.....)
如果需要转载,请注明出处和作者。谢谢
QQ:221704
MSN:flyly@yeah.net
EMAIL:zhangfl@sports.cn