2011-09-29 4 views
15

Proguardがパッケージcom.foo.*からクラスを難読化するのを防ぐ必要があります。パッケージ全体を難読化することからproguardを停止するには?

私が試してみました:

-keep com.foo.** { 
    <fields>; 
    <methods>; 
    <constructors>; 
} 

しかしProGuardのは言う:

Error: Unexpected keyword 'com.sun.foo.**' in line 32 of file 'obfuscationConfig.pro', included from argument number 1

私はkeep name com.foo**またはkeep * com.foo.**をしようとした場合、私は同様のエラーを取得します。

+0

これはあなたに「予期しないキーワード」を与えていた、なぜあなたが出ましたか?私は似たようなものを使用していましたが、以前は動作していましたが、最近は同じエラーが発生しています。 – speedynomads

答えて

30

は、次を使用してみてください:

-keep class com.foo.** { 
    public protected private *; 
} 
+0

これだけですべてを維持できませんか? – tomwhipple

+0

@tomwhipple 'com.foo'パッケージ(およびサブパッケージ)のすべてを保持します – Idolon

+4

...答えは"はい "です。パッケージ専用メンバーの難読化を防ぐには、ブロックに新しい行を追加する必要があります。どのようなユーザーを憎むべき憎悪。 – nmr

関連する問題