私のアプリケーションには、public static void main(String[] args)
メソッドを提供する複数のクラスがあります。これらのメソッドは、開発/テスト時にのみ必要です。ProGuardでそれらを削除することをお勧めします(ただし、これらのメソッドのみ、周囲のクラス全体ではありません)。私は-assumenosideeffects
を使用しようとしましたが、それはメソッドへの呼び出しにのみ影響し、メソッド自体には影響しないようです。 public
とstatic
にもかかわらず、Proguardにmain()
メソッド全体を強制的に削除させるにはどうすればよいですか?ProGuardに公開静的メソッドを強制的に削除させるにはどうすればいいですか?
6
A
答えて
0
ProGuardには、どのクラス/メソッドを保存する必要があるかを判断するためのシードが必要です。これらの種子から参照されるものはすべて保管されます。
-assumenosideeffects
オプションは、結果が決して使用されないメソッドへの実際の呼び出しを削除するために使用されますが、メソッド自体が削除されているとは限りません。
具体的には、public static void main(String[])
のすべてのメソッドをJavaアプリケーションの標準シードにするルールがあります。
-whyareyoukeeping
オプションを使用すると、特定のメソッド/クラスが保持される理由を分析できます。
関連する問題
- 1. gccに静的ライブラリを強制的にリンクさせるにはどうしたらいいですか?
- 2. Glass GDKの静的カードを公開して公開するにはどうすればよいですか?
- 3. Visual Studioで静的メソッドに強制的に抽出する
- 4. AutoCompleteTextViewにドロップダウンの高さを強制的に更新させるにはどうすればいいですか?
- 5. 強制的にファイルを削除する
- 6. キャッシュを強制的に削除する
- 7. JavapoetにUTF-8 Javaソースコードを強制的に作成させるにはどうすればいいですか?
- 8. Jax-RSにJSONのみを強制的に適用させるにはどうすればいいですか?
- 9. Xcodeにカスタムコンパイラを強制的に使用させるにはどうすればいいですか?
- 10. 壊れたPostgresデータベースを強制的に削除するにはどうしたらいいですか?
- 11. Javaの静的メソッドに非静的変数を挿入するにはどうすればよいですか?
- 12. CRANに公開されているパッケージを削除するにはどうすればよいですか?
- 13. Android:強制的にソフトキーボードを強制終了するにはどうすればよいですか?
- 14. gitlabにサブモジュールの参照を強制的に更新させるにはどうすればよいですか?
- 15. Javaアプリケーションを強制的にネットワークプロキシにログオンさせるにはどうすればよいですか?
- 16. Chromeにリソースを強制的に再読み込みさせるにはどうすればよいですか?
- 17. スレッドを別のスレッドの前に強制的に開始するにはどうすればよいですか?
- 18. iPhoneのSafariでiTunes URLを強制的に開くにはどうすればいいですか?
- 19. サブクラスに強制的に静的解析メソッドを実装させることはできますか?
- 20. リストアコミットは強制的に削除Github
- 21. スイフト - 強制的にソケットを閉じないようにするにはどうすればいいですか?
- 22. 静的なhtmlウェブサイトのページから.htmlを削除するにはどうすればいいですか
- 23. 公開静的サイトをウェブアプリケーションとしてホストするにはどうすればよいですか?
- 24. 公開するとブラウザが強制的にキャッシュをクリアする
- 25. Railsにキャッシュされたアセット(すなわち、レーキアセット:クリーンは無効)を強制的に削除するにはどうすればよいですか?
- 26. CloudFormationに空でないS3バケットを強制的に削除させることはできますか?
- 27. コードでネットワークフォルダ内にローカライズされたファイルを強制的に削除する
- 28. Linuxでrm -rfのようにPythonで強制的に削除するには?
- 29. 存在しないプロパティを強制的にnullにするにはどうすればよいですか?
- 30. Railsは静的コンテンツをどのように公開していますか?
既に使用されていないメソッドを削除する最適化はありませんか? –
確かに、縮小を有効にすると、未使用のコードが削除されます。しかし、ポイントは、 'public static'メソッドがあなたのコードの外側から使用されるかもしれないので、未使用であるかどうかを確かめることができないということです。だから私は何とか削除を強制する必要があります。 – sschuberth
私はプロゴアードがあなたに与えることは、関数とクラスをそれによって修正されないように除外できることだと思います。 –