2009-05-13 6 views
2

ツールベンダーのコードの一部を送信する必要があります。クラスからプロジェクトへの参照をすべて削除したいと思います。すべてのJavaクラス、フィールド、メソッドの名前を変更する簡単な方法は?

Javaには数多くの難読化ツールがありますが、コードをスクランブルしたくないので、できるだけ単純で一貫性のある名前を変更してください。 (おそらく、これは難読化ツールのいくつかでは設定できますか?)最良の選択肢は、クラスA、B、C、メソッドa1、a2、a3のようなものです...

ツールが何とかEclipseのリファクタ/リネームオプションと統合されていますが、これは必須ではありません。

+0

名前を変更するものと何を変更するのかをどのように認識していますか? –

+0

ビジネスロジックが何を理解できるのではなく、問題を再現できるようにするために、すべての名前を変更したいと思います。 – tputkonen

答えて

4

ProGuardは、-applymapping filenameオプションで事前定義されたマッピングを使用して難読化するために使用できます。 -dontshrink-dontoptimizeオプションと組み合わせて、あなたが望むことを行うことができます。私は、一般的なEclipseプラグインが気になるわけではありませんが、あなたがantでビルドしている場合、その配布にはタスクが含まれています。

+0

ありがとう、私はそれを見なければならないでしょう。私たちはmavenを使用しているので、mavenプラグインはうまくいくでしょう。 – tputkonen

+0

私たちが現在使用しているproguardには、mavenプラグインがあります。 http://pyx4me.com/pyx4me-maven-plugins/proguard-maven-plugin/ –

0

Eclipseの名前変更機能に問題がありますか? あなたは名前の変更について選択的でなければならないように思えるので、これはある種のマッピングファイルを作成するのと同じくらい速いかもしれません。

+0

それは厄介な傾向があり、長い時間がかかります。 –

+0

さて、出荷するコードの量によって決まると思います。彼はそれが「コードの一部」であると述べていたので、名前を変更するクラスの量はやや少なくなるかもしれません。確かに、何十ダースものクラスのマニュアル名を変更したくないです。 – Flo

+0

私たちは数十のクラスを持ち、メソッドとフィールドの数は何百もあります。 – tputkonen

関連する問題