Androidアプリケーションでgcm.jarファイルを使用しています。System.out.println()
制御の流れを確認するために、jarファイルを編集して(つまり)いくつかのデータを印刷する必要があります。どうしてそれは可能ですか?
4 に答える
jar ファイルがあり、コードを編集して print ステートメントを入力したいとします。あなたがそれをすることを許される可能性は低いです。jar ファイルが逆コンパイルを回避する方法でエンコードされている可能性があります。さて、@Anup はおそらく正しいです。利用可能な場合は、ソース コードを確認する必要があるかもしれません。そうでない場合は、とにかくスープに入っています。
あなたがやろうとしているのはhack
、最近ではクラスガーブリング技術を使用して防止されているjarファイルへの侵入です。
最初に逆コンパイルして jar ファイルを編集し、Java デコンパイラを使用
してから、.java ファイルにコードを追加して
、新しい JAR ファイルを再パックまたはコンパイルしてビルドし、任意の IDE またはメモ帳で JDK を使用できます。
jarファイルはzipファイルに他なりません。したがって、標準のzipユーティリティを使用できます。また、jarコマンドラインツールも使用できます。
コード内で開く必要がある場合は、zip / jarファイルを操作できるさまざまなオープンソースライブラリがあります。また、java.util.zipパッケージにあるbuildinzipユーティリティを利用することもできます。
jar ファイルは Java ARchive です。これは通常、通常の Zip ツール (7zip が思い浮かびます) を使用してオープンエンドにすることができます。おそらく、その JAR の内容で多くのことを行うことはできません。おそらく、バイトコードであり、逆コンパイルする必要がある .class ファイルが含まれています。代わりにソースコードを入手してみてください。より簡単なはずです。
デバッガーを使用して、必要な値を取得することをお勧めします。