2012-04-25 55 views
0

我的JavaScript库变得相当大,并且使用Closure编译的速度很慢。我想创建一个只编译更改模块的makefile。不过,我仍然希望使用ADVANCED_OPTIMIZATIONS来重新命名模块内容的大小和安全性,以及从其他模块调用的那些函数。有没有合理的方法来做到这一点?谷歌关闭分割代码到编译单元

基本上我想编译模块A并存储某处从实际类成员名称到缩小版本的映射。然后在编译模块B时,应该将代码访问模块A翻译成使用正确的缩写名称,就像我一次编译整个东西一样。

+1

这不会是最佳的,因为您需要“导出”所有库函数(因为Closure不知道哪些文件用于其他文件)。你不会得到死代码删除 - 一个非常理想的功能。您可以使用生成的变量映射文件强制进行相同的重命名。不过,我的建议是获得一个快速的CPU ... – 2012-04-26 02:29:38

+0

有没有办法使用生成的变量映射文件,而无需编写新的工具来做到这一点? – jjrv 2012-04-26 19:26:44

+1

是的,我相信有一个命令行选项可以使用现有的变量映射文件,以便重新绘制从运行到运行一致。 – 2012-04-28 02:14:41

回答

1

最终,您无法获得全局死代码删除和单独编译。您必须以某种方式导出某种接口,让编译器知道您有外部使用的代码要保留。