我正在编写Java到Java Bytecode编译器,编译为Jasmin代码,并将其组装到一起。我创建它的目的是源代码文件将能够引用和使用Java库类(你几乎必须为字符串,打印等)。我的问题是如何去做这件事。Java到Java Bytecode编译器:如何获取Java类库信息?
到目前为止,我刚刚使用了对Java安装文件夹中的文本文件中保存的所有库类列表的引用(它只是列出了它们的包和名称)。我已经用它来编码解析器/类型检查器,尽管这样做并不理想,因为类型检查器在使用库类时不能进行任何类型检查。
现在真的是一个问题,我正在研究代码生成,因为如果你想调用一个库类的方法,你必须给它提供完整的方法签名 - 这是我无法访问的。
我在徘徊什么人的建议将如何进步。一种方法是通过创建所有参数和返回类型的数据库/列表的所有类。这显然非常耗时,并且可能太不切实际。还有其他更优雅的方法吗?
感谢, 威尔
附:我使用Python来编码。我想如果解决方案必须使用Java代码,我可以将它作为一个子进程运行。
是的,我最终选择了这个选项。我写了一个Java程序,它使用方法/字段等名称并返回它们所属的类(如果它们存在的话)。 Java Refletion API都是可能的。 – 2012-03-28 14:16:35