1

myapp-logic難読化されたクラスと難読化されていないクラスを含む JARがあります。

myapp-logicというWebアプリケーションで使いたいですmyapp-webmyapp-logicの難読化バージョンを の依存関係に追加するとmyapp-web、次のエラー メッセージが表示されます ( を実行するとmvn clean compile)。

EntryPageController.java:[55,41] incompatible types
found   : java.lang.Object
required: ru.altruix.ccp.logic.api.simfacade.SimulationFacade

エラーのあるコードは次のようになります。

final SimulationFacadeFactory factory = this.injector.getInstance(SimulationFacadeFactory.class);
simulationFacade = factory.create(); // The error occurs here (line 55)

myapp-logic難読化されたJAR を Jad で開くと、SimulationFacadeFactoryインターフェイスは難読化されません (または、難読化されていないように見えます)。

ここに画像の説明を入力

元のコード:

package ru.altruix.ccp.logic.api.simfacade;

import ru.altruix.commons.api.conventions.Factory;

public interface SimulationFacadeFactory extends Factory<SimulationFacade> {
}

Eclipse はそのエラーを表示しません (Maven でのみ表示されます)。

エラーを修正するにはどうすればよいですか ( myapp-webobfuscated を参照してコンパイルのコードを作成しますmyapp-logic)。

4

1 に答える 1

2

それが役立つかどうか試してください: Proguard ルールでは、特に署名を保持すると役立つ場合があります。

<keepattribute name="*Annotation*" />
<keepattribute name="Signature" />
<keepattribute name="Exceptions" />
于 2012-11-22T19:22:36.073 に答える