Web アプリまたはサービス(.war)
このウィザードで、Web アプリケーション タイプを選択する際に、.war
ファイルの場所と名前を指定するよう求められるほか、Java ランタイム クラスを解決するために PreEmptive Protection™ DashO™ for Android & Java で使用する JDK の場所(JDK の導入を参照)も指定するよう求められます。
ウィザードは、含まれるクラスや jar ファイルについて、.war
ファイルを調べます。
これらの項目には、JNLP ファイルによって参照される jar ファイルだけでなく Web コンテナによっても使用される、WEB-INF
内の特別な場所が含まれています。
.war
ファイル内のどの項目を難読化するかを選択できます。
.war
ファイルに格納されている jar ファイルに加えて、DashO はサーブレットと JSP API の一部であるクラスを必要とします。
ウィザードは、既知の場所でこれらの jar ファイルへの参照を探し、サポート jar ファイルの一覧にこれらを追加します。
アプリケーションが Web コンテナに対し、log4j ログ サービスなどの Web アプリケーション間で共有されるその他すべてのクラスを提供することを期待している場合は、それをサポート jar ファイルの一覧に追加する必要があります。
サポート ライブラリの一覧には Java モジュール(.jmod
)も追加できます。
最後にウィザードは、ウィザードの出力を保存するディレクトリを尋ねます。 ウィザードは、プロジェクト ファイルに加えて、いくつかのファイルを作成します。
obfuscate.xml
:.war
ファイルを開き、DashO プロジェクト ファイルを実行してから、.war
ファイルを再アセンブルする Ant スクリプト。obfuscate.properties
:obfuscate.xml
が読み取る、Java のプロパティ ファイル。 場所の既定値を変更するには、このファイルを使用します。
obfuscate.xml
ファイルは、Ant を起動して実行することができます。
ant -f obfuscate.xml
または、別の Ant ファイルから呼び出すこともできます。
<ant antfile="obfuscate.xml"/>
3 つのタスクを実行します。
.war
ファイルをディレクトリに解凍します。 既定のディレクトリは.unwar
です。.unwar
ディレクトリの内容に対して、ウィザードで生成されたプロジェクト ファイルを実行します。 結果は、一時的に.obfus
ディレクトリに格納されます。名前に
_dashoed
を加えた新しいファイルに難読化されたコードを持つ.war
ファイルを再アセンブルします。
指定したディレクトリに、上書きされるプロジェクト ファイルがある場合は、そのプロジェクトを上書きするかどうかの確認を求められます。
既存のプロジェクトを上書き保存すると、新しい設定が保存され、古いプロジェクトのバックアップが作成されます。
難読化を実行するには、DashO の Ant タスクをインストールする必要があります。 詳細については、DashO の Ant タスクのドキュメント(英語)を参照してください。