yguard не обновляет файл свойств в банке
У меня есть JAR-файл, содержащий некоторые файлы свойств, такие как log4j.properties и config.properties. Вот мой муравейник для yguard. Все остальное работает, кроме обновления файла свойств.
<target name="yguard">
<taskdef name="yguard" classname="com.yworks.yguard.YGuardTask" classpath="lib/yguard.jar" />
<yguard>
<inoutpairs resources="none">
<fileset dir="${basedir}">
<include name="MyApp.jar" />
</fileset>
<mapper type="glob" from="MyApp.jar" to="MyAppObs.jar" />
</inoutpairs>
<externalclasses>
<pathelement location="lib/log4j-1.2.17.jar" />
</externalclasses>
<rename conservemanifest="true" mainclass="com.amit.Application" >
<adjust replaceContent="true" >
<include name="**/*.properties" />
</adjust>
</rename>
</yguard>
</target>
файл config.properties
com.amit.Application.param1 = something
Я нашел некоторые вопросы в stackru, но они не помогли. В одном месте было упомянуто, что файл (например, jsp, xml, properties) должен находиться в файле jar, который у меня уже есть. Но мой запутанный файл yguard просто копирует файлы как есть.
Я пробовал много комбинаций с тегами переименования и настройки, но у меня ничего не получалось.
Следующий пост я уже посетил
Можно ли управлять журналами через Obfuscation с помощью yGuard?
1 ответ
Видимо, вы хотите, чтобы yGuard скрыл название поля param1
, так как com.amit.Application
очевидно, это ваша точка входа, и yGuard автоматически исключает данный основной класс. Таким образом, в основном вы хотите, чтобы результат был что-то вроде
com.amit.Application.AÖÜF = something
Это невозможно, потому что yGuard может корректировать имена классов только в файлах свойств, как указано здесь: Руководство yGuard