問題タブ [proguard]

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 投票する
1 に答える
11427 参照

netbeans - NetBeans 6.7 / 6.8でProGuardを使用するにはどうすればよいですか?

ProGuardをNetBeans6.7/ 6.8と統合する方法を知っている人はいますか?NetBeansを長年使用していますが、ProGuardを使用したいのですが、プラグインとして追加し、ボタンをクリックするだけでプログラムの難読化を開始する方法はありますか?NetBeansモビリティパックに含まれていることはわかっていますが、通常のNetBeansバージョンに含まれていないのはなぜですか。

0 投票する
4 に答える
6334 参照

obfuscation - プロガードで難読化した後、googleguiceによるインジェクションは機能しなくなりました

誰かがグーグルのguiceの使用を難読化(特にプロガード)と組み合わせようとしたことがありますか?難読化されたバージョンのコードは、guiceが型パラメーターの欠落について不平を言っているため、googleguiceでは機能しません。この情報は、関連するクラスが難読化から除外されている場合でも、proguardが実行する変換ステップによって消去されるようです。

スタックトレースは次のようになります。

問題を再現しているように見える小さな例を(guiceを使用せずに)作成しようとしました:

このコードをsbfuscatedなしで実行すると、出力は次のようになります。

しかし、プロガードで難読化されたバージョンを実行すると、次のようになります。

これらは、難読化に使用したオプションです。

誰かがこれを解決する方法のアイデアを持っていますか(関連するファイルを別のjarに入れて、それを難読化しないという明白な回避策は別として)?

よろしく、
ステファン

0 投票する
30 に答える
195066 参照

android - Android アプリのリリース バージョンをビルドする前に、すべてのデバッグ ロギング呼び出しを削除するにはどうすればよいですか?

Google によると、Android アプリを Google Play に公開する前に、「ソース コード内の Log メソッドの呼び出しを無効にする」必要があります。パブリケーション チェックリストのセクション 3 からの抜粋:

リリース用にアプリケーションをビルドする前に、ロギングを無効にし、デバッグ オプションを無効にしてください。ソース ファイル内の Log メソッドの呼び出しを削除することで、ログを無効にすることができます。

私のオープンソース プロジェクトは大規模で、リリースするたびに手動で行うのは面倒です。さらに、ログ行を削除することは、潜在的に注意が必要です。たとえば、次のようになります。

ログ行にコメントを付けると、条件は次の行に適用され、load() が呼び出されない可能性があります。そのような状況は、存在すべきではないと判断できるほどまれですか?

それで、それを行うためのより良いソースコードレベルの方法はありますか? それとも、すべてのログ行を効率的かつ安全に削除するための巧妙な ProGuard 構文でしょうか?

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

java - proguard を使用して war ファイルを難読化する方法

proguard を使用して war ファイルを難読化したいのですが、どうすればできますか?
手順を教えてください

0 投票する
4 に答える
12977 参照

java - エラー: の共通スーパー クラスが見つかりません

MS Windows デスクトップ アプリケーション (Eclipse が提供する SWT ライブラリを使用する Java 6 SE) を Proguard で処理しようとしています。そして、次の重大なエラーが発生します。

このエラーを Google で検索してみると、ウェブ全体で 2 か所しか出てこず、非常に驚​​きました。私は、Proguard および Java コード最適化ツールをまったく使用していない初心者です。これを修正する方法についての考えや提案をいただければ幸いです。前もって感謝します。

上記のエラーは、「-dontskipnonpubliclibraryclasses」を使用して修正されました。

--最終更新:

今でも別のエラーが発生します。出力全体は次のようになります。

これは私が確実に理解できない問題です:(どんな助けも大歓迎です。

私が使用するオプションは次のとおりです。

0 投票する
2 に答える
2182 参照

java - ProGuard で rt.jar を縮小することは可能ですか?

ProGuard (またはその他の最適化ソフトウェア) などの最適化ソフトウェアを使用して、Sun が提供する rt.jar の「アプリで使用される」クラス/メソッド/フィールドのみを最適化/縮小/選択/難読化できる手順はありますか? そうすれば、実際にアプリケーションのダウンロード サイズを大幅に最小化し、より安全にすることができるでしょうか? 右?

関連する質問:

  • 発表を待っている Sun の「ジグソー プロジェクト」が、この特定の問題を自動的に処理することを意図しているかどうか知っていますか?
  • 誰かが Avian Java の代替案についてまだ意見を述べていませんか? ここで共有してください。

ありがとうございました。

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

java - Eclipse mtj - プロガード:サードパーティのjarエラーを難読化する

proguard (mtj プラグインでのサポート) を使用して、サード パーティの jar を含むプロジェクトを難読化しますが、エラーが発生します。

プロガードはJavaMEではなくJavaSEのクラスを探すようです。サードパーティの jar を使用するプロジェクトでのみ発生します。

0 投票する
5 に答える
9574 参照

java - OS XでのProGuardの実行:Appleのrt.jarに相当するものはどこにありますか?

ProGuardを実行してjarファイルを縮小しています。必要なパラメーターの1つは、システムのランタイムjarです。これは$JAVA_HOME/lib/rt.jarSunディストリビューションではありますが、AppleのMac OS X(私の場合はv10.6(Snow Leopard))ではありません。

OS X用のrt.jarはありますか?

0 投票する
2 に答える
6729 参照

android - Proguard ビルドから R*.class ファイルを除外する方法

ここで説明する方法を作成するまであと 1 歩です: Scala 2.8 トランク ビルドを使用して Android をターゲットにする

単一のプロジェクトで作業します (vs scala 用の 1 つのプロジェクトと android 用の 1 つのプロジェクト)。

問題が発生しました。この入力ファイルを使用して (引数) proguard:

Proguard は scandroid.jar を正常にビルドしますが、android リソース ビルダーが生成およびコンパイルする生成された R クラスが含まれているようです。この場合、それらは bin/org/jeb/R*.class にあります。これは私が望むものではありません。android dalvik コンバーターは、R​​ クラスの重複があると見なされるため、ビルドできません (scandroid と R*.class ファイルにあります)。上記の proguard 引数を変更して scandroid.jar から R*.class ファイルを除外し、dalvik コンバーターが満足するようにするにはどうすればよいですか? 編集: ;bin/org/jeb/R.class;etc... を -libraryjars 引数に追加しようとしたことに注意してください.私のscalaクラスファイルも。

0 投票する
2 に答える
1320 参照

java - エスケープ分析を備えた静的Javaバイトコードオプティマイザー(プロガードなど)?

エスケープ分析に基づく最適化は、Proguard で計画されている機能です。それまでの間、エスケープ解析を必要とする最適化を既に行っている、proguard のような既存のツールはありますか?