有没有办法将使用泛型的Java代码转换为不使用泛型,以便在1.5之前的虚拟机上运行?
我想将JBox2D转换为在BlackBerry上运行,而BlackBerry不支持泛型。我宁愿不必手动转换它。
答案 0 :(得分:3)
我没有意识到会自动重写源代码以取出泛型。
但是,即使您不想进行手动更改,也可以更轻松地完成此过程。使用Eclipse,任何其他主要IDE,甚至原始javac
本身的命令行选项......您可以为编译输出指定目标JRE版本。指定版本1.4。
IDE或javac
将使用1.5之前不支持的功能(例如泛型)显示代码中每个点的错误。这至少会让你直接找到需要改变的确切文件和行号...以防止猜测和狩猎。
答案 1 :(得分:0)
应该不是问题。只是大量的搜索,替换和铸造。然而;我认为没有任何东西可以帮到你。
答案 2 :(得分:0)
我没有尝试这个(因为我开始使用Generics时从未在1.4或更早的VM上工作过),但是经常听说Retroweaver是一个很好的工具来实现这个目的。
它适用于类文件级别,而不是源文件级别。