問題タブ [yguard]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
135 参照

java - Java ant war を難読化する

Ant ベースの Java アプリケーションのコード難読化を行いたいと考えています。

以下のリンクをたどり、言及されたantスクリプトbuild.xmlをファイルの最後に追加しました。

参考リンク:http ://codeaweso.me/2009/02/obfuscating-a-webapp-war-file-with-yguard-and-ant/

webapp.jar中間ステップで を生成しました。

作成されたものを抽出するwebapp.jarと、アプリケーションのすべてのクラス ファイルが含まれます。それを逆コンパイルすると、実際のJavaファイルが得られます

これは難読化する正しい方法ですか?

0 投票する
1 に答える
881 参照

java - yGuard を使用して Gradle で Java を難読化する ~ メソッドを除外するには?

yGuard を使用して、Gradle で Java コードを難読化したいと考えています。これまでのところ、以下を使用して難読化を機能させることができました。

ただし、これには関数が不明瞭になるという問題があり、(難読化されていない jar で動作します)mainを使用して実行できなくなります。java -jar module_obf.jar

main関数を難読化から除外する方法をいくつか試しました。

最初に、ドキュメント ( https://yworks.github.io/yGuard/task_documentation/#controlling-obfuscation-exclusion-with-annotations ) で説明されているように、次のように @Obfuscate アノテーションを使用してみました。

私の IDE (Eclipse 2019-14) では、この行は有効であると表示されました。ただし、作成したgradleタスクでコンパイルしようとすると、次のエラーが発生しました。

これを機能させるために多くのことを試みましたが、機能するソリューションに到達できませんでした。

次に、次のように、yGuardObfuscateタスクで keep > method 要素を使用して、クラスのmain関数を明示的に保持しようとしました。Start

これにより、Gradle ビルドが次の例外で失敗しました。

繰り返しますが、「」なしで「クラス」を記述したり、余分な {} を追加したりするなど、ここでいくつかのことを試しましたが、何も役に立ちませんでした。

ここでの質問は次のとおりです。私は何を間違っていますか? また、yGuard がmain機能を難読化するのを防ぐにはどうすればよいですか?