1

我在 jar 中有一些类文件。现在我正在寻找一种方法来使用 scala 编译器的一些组件(最显着的 Inliners)来优化该类文件。
我的想法是:

  1. 使用 ICodeReader 从类文件中发出 ICode

  2. 使用 Inliner 类的实例以实现所需的优化

我不知道这是否是正确的方法

问题是

  1. 如何使用 ICodeReader 读取类文件并生成所需的 ICode。ICodeReader 继承自 ClassfileParser。对我来说更可能使用的唯一方法是 parse(file: AbstractFile, root: Symbol) 但问题是根参数。

欢迎任何帮助

4

1 回答 1

0

Scala 编译器作用于源代码和中间步骤的结果以生成字节码,如果启用,它将尝试应用几个优化。

在您的情况下,如果我理解正确,您没有源代码,只有编译的类,我不希望您能够在编译的类上使用 Scala 编译器的功能。

在我的理解中,您应该关注的是一个字节码优化器,例如 ProGuard,它能够获取现有字节码并对其进行优化,而无需访问源代码

http://proguard.sourceforge.net/#FAQ.html

于 2012-05-09T07:20:35.050 回答