decompile.sh --engine fernflower fails on .aar files (dex2jar on a JAR)

オープン 初心者向け
#35 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

@idealistichacker がすでに取り組んでいます。

2026年11月4日 から。

  • #39 @idealistichacker による — オープン

評価

難易度
2/5
見積もり時間
1〜3時間
初心者へのやさしさ
72/100
issue の種類
バグ
明瞭さ
明確に書かれている
活発さ
活発
技術スタック
android, java, shell
領域
cli, tooling

調査の方向性

バグは scripts/decompile.sh の run_fernflower() にあり、227〜228行目付近で .aar が .apk と同じ dex2jar の経路に流されています。まずその分岐を読み、AAR が classes.dex ではなく classes.jar を含むことを確認してください。完了条件は、.aar から classes.jar を展開して .jar の経路と同じように逆コンパイルするか、Fernflower は .aar を直接受け付けないという明確なメッセージを出してスクリプトが終了することです。

索引モデルが issue の本文から書いたものです。

説明

Summary: decompile.sh --engine fernflower fails on .aar files. The script sends .aar through dex2jar, but an AAR contains classes.jar, not classes.dex.

Repro: bash scripts/decompile.sh --engine fernflower test-lib.aar (jadx Apache-2.0 test fixture, one class) with FERNFLOWER_JAR_PATH set and dex2jar on PATH.

Actual: java.io.IOException: Can not find classes.dex in zip file then Error: dex2jar conversion failed with status 0, exit 1, no output. (The 'status 0' text is misleading; the failure is only caught because the output jar is missing.)

Expected: extract classes.jar and decompile it like the .jar path, or say plainly Fernflower does not support .aar directly. Root cause (code-read): run_fernflower() lines 227-228 treats .aar like .apk.

Workaround (verified): extract classes.jar from the AAR, run the script on the jar - exits 0.

Env: skill commit 0c7cf89, Ubuntu 24.04.5, Java 17.0.20.1, jadx 1.5.6, Vineflower 1.12.0, dex2jar 2.4.38. No commercial app used.

主要言語
Shell
スター
8k
フォーク
902
PR マージ指標
30日以内にマージされた PR はありません

環境構築

このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

SimoneAvogadro/android-reverse-engineering-skill のほかの issue

SimoneAvogadro/android-reverse-engineering-skill の issue をすべて見る

似ている issue

Shell/Bash の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。