В настоящее время я пытаюсь запутать приложение Eclipse RCP с помощью ProGuard. Проблема заключается в том, что он запутывает имена пакетов (класс My.Package.Class превращается в нечто вроде a.b.c), но сохраняет имена пакетов в разделе Export-Package MANIFEST.MF.Как сфотографировать комплект OSGi с помощью ProGuard?
Это приводит к тому, что мое приложение (которое представляет собой набор OSGi-пакетов, на самом деле) не может быть запущено, поскольку имена пакетов, указанные в разделе Export-Package в файле MANIFEST.MF, не могут быть разрешены.
Неужели кто-то добился успеха в ProGuard, запутывающем приложение RCP на базе OSGi? В принципе, я вижу два варианта: либо полностью отключить обфускацию пакетов, либо обрезать MANIFEST.MF в разделе Export-Package, но я не могу найти способ реализовать их. Proguard, похоже, запутывает только имя класса Bundle-Activator в MANIFEST.MF, пропуская все остальные разделы. Заранее спасибо!
Аарон, благодарю вас за ответ! Как я уже сказал, отключение обертывания пакетов будет работать, но я не знаю, как реализовать это (и если это вообще можно добиться) с помощью Proguard ... Чтобы запутать или не запутать - это не выбор. Наш клиент хочет этого :) –
В этом случае используйте мое второе предложение. –
Спасибо! Я следил за вашим предложением и объединил все модули в один мегабунд, устраняя таким образом все межмодульные зависимости, вызывающие проблемы. Это сработало. –