2013-04-03 43 views
3

我试着这样做:在Rhino中,我可以枚举可用的Java包的列表吗?怎么样?

var r = {}; 
for (p in Packages) { 
    if (Packages.hasOwnProperty(p)) { 
    r[p] = p.toString(); 
    } 
} 

...但我得到了一个错误:

TypeError: Invalid iterator value ... at line xx

错误消息指出该行是一个与

for (p in Packages) { ... } 

另外,

var r = { 
    "Packages" : typeof Packages, 
    "Packages.length" : typeof Packages.length, 
    "Packages.java" : typeof Packages.java, 
    "Packages.surelyThisIsNotDefined" : typeof Packages.surelyThisIsNotDefined 
}; 

结果:

{ 
    "Packages": "object", 
    "Packages.length": "object", 
    "Packages.java": "object", 
    "Packages.surelyThisIsNotDefined": "object" 
} 

...这是没有帮助。

回答

2

不知道你想要的输出格式,下面的代码在运行时返回由类加载器加载的Java包的列表:

packs = java.lang.Package.getPackages() 
for (p in packs) 
print(packs[p]); 
+0

谢谢,这个工作完美 – Cheeso

相关问题