目前我正在试图混淆使用ProGuard我的Eclipse RCP应用程序。的问题是,它混淆了包名(类My.Package.Class变成类似A.B.C),但保持了包名在MANIFEST.MF的出口-Package部分。

这导致一个事实,即我的应用程序(它是一组OSGi的捆绑包,实际上)不能运行,如在MANIFEST.MFs出口-Package部分中指定的包名不能被解决。

有任何人不得不使用ProGuard混淆基于OSGi的RCP应用程序的任何成功?基本上,我看到两个选择:要么完全关闭包名称混淆,或obfucate MANIFEST.MF的出口包装部分,但我无法找到实现它们的方式。 Proguard的似乎MANIFEST.MF混淆只捆绑激活因子类名,跳过所有其他部分。由于事先!

有帮助吗?

解决方案

关闭包名称混淆;我的意思是重要的商业价值,你告诉世界上包名揭露?

如果这确实是一个问题,把所有的代码放到一个完全混淆库,并在非混淆的插件使用的库。

这是说,可以考虑不混淆浪费你的时间都没有。这将花费你的时间和金钱,这是值得怀疑是否有任何好处。在当你的竞争对手已经开始拆卸您宝贵的工作时间,你会写入下一个版本。何必呢?

其他提示

OSGi包混淆不支持内建由ProGuard的。 检查 Proguard的特征请求#135 获得更多的信息。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top