🍺 BREW Explorer

← all formulae

fernflower

brew install fernflower v261.25134.95 Apache-2.0

Advanced decompiler for Java bytecode

75
30-day installs · #3909
300
90-day · #3531
843
365-day · #4103
4.3k
★ GitHub stars · updated 2mo ago

Runtime dependencies

GitHub topics

decompiler java reverse-engineering

Links

Raw metadata
{
  "aliases": [],
  "alternatives": [],
  "build_dependencies": [],
  "categories": [],
  "caveats": null,
  "conflicts_with": [],
  "dependencies": [
    "openjdk"
  ],
  "deprecated": 0,
  "deprecation_reason": null,
  "desc": "Advanced decompiler for Java bytecode",
  "disable_reason": null,
  "disabled": 0,
  "enrichment_fetched_at": "2026-06-20T23:37:35+00:00",
  "first_seen": "2026-06-20T23:34:18+00:00",
  "full_name": "fernflower",
  "github_default_branch": "master",
  "github_last_commit_at": "2026-06-19T09:31:34Z",
  "github_readme_excerpt": "[issue tracker]: https://youtrack.jetbrains.com/newIssue?project=IDEA\u0026clearDraft=true\u0026c=Subsystem%20Java.%20Decompiler.%20Engine\n\n# Fernflower\n\nFernflower is the first actually working analytical decompiler for Java and probably for a high-level programming language in general.\n\nReleases are published in the [Intellij Community repository](https://www.jetbrains.com/intellij-repository/releases).\n\nPlease send your bug reports and feature requests to the [issue tracker] (in subsystem `Java. Decompiler. Engine`).\n\n### IntelliJ usage\n\nFernflower is bundles as in IntelliJ IDEA and is primarily used to show Java code when debugging or navigating through class files.\n\n### Command line usage\n\nFernflower can be run from the command line in stand-alone mode using the following command:\n\n```console\njava -jar fernflower.jar [-\u003coption\u003e=\u003cvalue\u003e]* [\u003csource\u003e]+ \u003cdestination\u003e`\n```\n\n`*` means zero or more times\n\n`+` means one or more times\n\n`\u003csource\u003e`: file or directory with files to be decompiled.\nDirectories are recursively scanned.\nAllowed file extensions are class, zip and jar.\nSources prefixed with -e= mean \"library\" files that won\u0027t be decompiled but taken into account when analyzing\nrelationships between classes or methods.\nEspecially renaming of identifiers (see the `ren` option) can benefit from information about external classes.\n\n`\u003cdestination\u003e`: destination directory to place the resulting Java source into\n\n`\u003coption\u003e=\u003cvalue\u003e`: a command-line option with the corresponding value (see \"Command-line options\" below).\n\n#### Examples\n\n```console\njava -jar fernflower.jar -hes=0 -hdc=0 c:\\Temp\\binary\\ -e=c:\\Java\\rt.jar c:\\Temp\\source\\\n```\n\n```console\njava -jar fernflower.jar -dgs=1 c:\\Temp\\binary\\library.jar c:\\Temp\\binary\\Boot.class c:\\Temp\\source\\\n```\n\n#### Command-line options\n\nExcept for `mpm` and `urc` the value of 1 means the option is activated, 0 - deactivated.\nThe default value, if any, is given between parentheses.\n\nTypically, the following options will be changed by user",
  "github_repo": "JetBrains/fernflower",
  "github_stars": 4312,
  "github_topics": [
    "decompiler",
    "java",
    "reverse-engineering"
  ],
  "homepage": "https://github.com/JetBrains/fernflower",
  "homepage_og_description": null,
  "homepage_og_image": null,
  "homepage_title": null,
  "installs_30d": 75,
  "installs_365d": 843,
  "installs_90d": 300,
  "keg_only": 0,
  "keg_only_reason": null,
  "last_seen": "2026-06-20T23:34:18+00:00",
  "license": "Apache-2.0",
  "llm_generated_at": null,
  "llm_model": null,
  "name": "fernflower",
  "oldnames": [],
  "one_liner": null,
  "optional_dependencies": [],
  "rank_30d": 3909,
  "rank_365d": 4103,
  "rank_90d": 3531,
  "raw_hash": "142f850ce04caee6",
  "recommended_dependencies": [],
  "revision": 0,
  "ruby_source_path": "Formula/f/fernflower.rb",
  "tap": "homebrew/core",
  "test_dependencies": [],
  "uses_from_macos": [],
  "version_head": null,
  "version_stable": "261.25134.95",
  "versioned_formulae": [],
  "why_use_this": null
}