有各种策略来实现预期目标 . 我不会重新审视那些已经提到过的,而是重复几个 .
1)信息可以放在档案的清单中 . 可以使用java.lang.Package类的方法检索它 .
String title = pckg.getImplementationTitle();
String vendor = pckg.getImplementationVendor();
String version = pckg.getImplementationVersion();
Package类还能够识别所有 loaded 包 .
Package[] package = Package.getPackages();
迭代寻找你的包,你可以获得当前加载的所有包的列表 .
将信息放入清单的最佳方法是使用Ant或类似的构建工具 . 这样,版本可以设置为日期 - 简单完成 .
2)将属性添加到JNLP的资源部分 .
..
..
BTW - ${href} 的使用旨在表示用作JNLP href属性的完全相同的字符串 .
使用BasicService.getCodeBase()方法获取代码库 . 使用..形成JNLP文件的URL
URL urlToJnlp = new URL(
basicService.getCodeBase(),
System.getProperty("jnlp.href") );
加载JNLP文件并使用J2SE的众多XML API之一解析它 . (如果它没有加载到J2SE的XML API中,它强烈表明它无效或格式错误 - 应该使用诸如JaNeLA之类的工具进行检查 . )
加载并解析后,可以获取和显示基本信息 .