{"id":13387524,"url":"https://github.com/konloch/bytecode-viewer","last_synced_at":"2025-05-14T11:05:14.950Z","repository":{"id":21877726,"uuid":"25201361","full_name":"Konloch/bytecode-viewer","owner":"Konloch","description":"A Java 8+ Jar \u0026 Android APK Reverse Engineering Suite (Decompiler, Editor, Debugger \u0026 More)","archived":false,"fork":false,"pushed_at":"2025-04-26T16:55:01.000Z","size":648617,"stargazers_count":14990,"open_issues_count":90,"forks_count":1176,"subscribers_count":374,"default_branch":"master","last_synced_at":"2025-05-01T23:05:30.901Z","etag":null,"topics":["android","apk","baksmali","bytecode","bytecode-viewer","cfr","compiler","decompiler","dex2jar","fernflower","hacktoberfest","java","java-decompiler","jsp","krakatau","procyon","recompiler","smali","static-analysis","war"],"latest_commit_sha":null,"homepage":"https://bytecodeviewer.com","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Konloch.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2014-10-14T10:26:46.000Z","updated_at":"2025-05-01T20:17:58.000Z","dependencies_parsed_at":"2023-02-14T23:46:42.315Z","dependency_job_id":"e183031c-0ff1-4b8c-870e-c0e7aa8f0abe","html_url":"https://github.com/Konloch/bytecode-viewer","commit_stats":null,"previous_names":[],"tags_count":61,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Konloch%2Fbytecode-viewer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Konloch%2Fbytecode-viewer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Konloch%2Fbytecode-viewer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Konloch%2Fbytecode-viewer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Konloch","download_url":"https://codeload.github.com/Konloch/bytecode-viewer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252765649,"owners_count":21800885,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","apk","baksmali","bytecode","bytecode-viewer","cfr","compiler","decompiler","dex2jar","fernflower","hacktoberfest","java","java-decompiler","jsp","krakatau","procyon","recompiler","smali","static-analysis","war"],"created_at":"2024-07-30T12:01:21.891Z","updated_at":"2025-05-06T20:35:48.883Z","avatar_url":"https://github.com/Konloch.png","language":"Java","readme":"# Bytecode Viewer\n\nBytecode Viewer - a lightweight user-friendly Java/Android Bytecode Viewer, Decompiler \u0026 More.\n\n#### New Features\n* Jump to Declaration\n* Draggable tabs\n* Patched [CVE-2022-21675](https://github.com/Konloch/bytecode-viewer/security/advisories/GHSA-3wq9-j4fc-4wmc) (Make sure to upgrade to v2.11.X)\n* Dark mode by default with multiple themes\n* Translated into over 30 languages including: Arabic, German, Japanese, Mandarin, Russian, Spanish\n* Plugin Writer - create and edit external plugins from within BCV\n* Fixed Java \u0026 Bytecode editing/compiling\n* Tabbed plugin console\n* Right-click menus on the resource and search panels\n* Javap disassembler\n* XAPK support\n* Latest dependencies (incl. decompilers like CFR, JD-GUI etc.)\n* Added support to Java files compiled using JDK \u003e 13\n* Migrated to Maven\n\n#### Links\n* [BCV Discord](https://discord.gg/aexsYpfMEf)\n* [Website](https://bytecodeviewer.com)\n* [Source Code](https://github.com/konloch/bytecode-viewer)\n* [Bin/Archive](https://github.com/konloch/bytecode-viewer/releases)\n* [Java Docs](https://the.bytecode.club/docs/bytecode-viewer/)\n* [License (Copyleft)](https://raw.githubusercontent.com/Konloch/bytecode-viewer/master/LICENSE)\n* [Credits](https://github.com/Konloch/bytecode-viewer/blob/master/CREDITS.md)\n* [Contributing](https://github.com/Konloch/bytecode-viewer/blob/master/CONTRIBUTING.md)\n* [Report Bugs](https://github.com/Konloch/bytecode-viewer/issues)\n* [Discussion Forum](https://the.bytecode.club/forumdisplay.php?fid=69)\n\n#### Key Features\n* Simply drag and drop to decompile and search Java Jars \u0026 Android APKs\n* File format support for: Class, Jar, XAPK, APK, DEX, WAR, JSP, Image Resources, Text Resources \u0026 More\n* 6 Built-in Java decompilers: Krakatau, CFR, Procyon, FernFlower, JADX, JD-GUI\n* 3 Built-in Bytecode disassemblers, including 2 assemblers: Krakatau and Smali/BakSmali\n* APK/DEX Support from Dex2Jar and Enjarify\n* Built-in Java Compiler\n* Advanced static-search functionality\n* Customizable UI\n* Plugins + Script Engine Design\n* Malicious code scanning API\n* Translated Into over 30 Languages Including: Arabic, German, Japanese, Mandarin, Russian, Spanish)\n* Export functionality as Runnable Jar, Zip, APK, Decompile All As Zip, Etc.\n* And more! Give it a try for yourself!\n\n#### Command Line Input\n```\n\t-help                         Displays the help menu\n\t-clean                        Deletes the BCV directory\n\t-english                      Forces English language translations\n\t-list                         Displays the available decompilers\n\t-decompiler \u003cdecompiler\u003e      Selects the decompiler, procyon by default\n\t-i \u003cinput file\u003e               Selects the input file (Jar, Class, APK, ZIP, DEX all work automatically)\n\t-o \u003coutput file\u003e              Selects the output file (Java or Java-Bytecode)\n\t-t \u003ctarget classname\u003e         Must either be the fully qualified classname or \"all\" to decompile all as zip\n\t-nowait                       Doesn't wait for the user to read the CLI messages\n```\n\n## What is Bytecode Viewer?\nBytecode Viewer (BCV) is an Advanced Lightweight Java/Android Reverse Engineering Suite. Powered by several open source tools BCV is designed to aid in the reversing process.\n\nBCV comes with 6 decompilers, 3 disassemblers, 2 assemblers, 2 APK converters, advanced searching, debugging \u0026 more.\n\nIt's written completely in Java, and it's open sourced. It's currently being maintained and developed by Konloch.\n\n## Is there a demo?\n[![BCV Demo](https://img.youtube.com/vi/I5GT6PoTGOw/0.jpg)](https://www.youtube.com/watch?v=I5GT6PoTGOw)\n\nPlease note this demo is from a very old version\n\n## How do I install BCV?\nDownload the latest version from https://github.com/konloch/bytecode-viewer/releases and run the Bytecode-Viewer-2.10.x.jar.\nYou may need to execute it via command line ```java -jar Bytecode-Viewer-2.10.x.jar``` (replace the X with the current minor version)\n\n## How can I use BCV?\n* Starting with a Jar, Zip, ClassFile or Android file (APK, DEX, XAPK, etc) drag it into BCV. It will start the decoding process automatically.\n* From here you can select the decompilers you would like to use by selecting the View Pane\u003eView 1, View 2, View 3, etc.\n* The view panes are-used to display up to 3 decompilers side by side, you can also toggle edibility here.\n* Select the resource you would like to open by navigating using the resource list, BCV will do its best to display it (Decompiling, Disassembling, etc).\n* You can use plugins to help you search along with using the search pane in the left-hand bottom corner.\n\n## How do the plugins work?\nThere is also a plugin system that will allow you to interact with the loaded classfiles. You could for example write a String deobfuscator, a malicious code searcher, or anything else you can think of.\n\nYou can either use one of the pre-written plugins, or write your own. The plugin system supports java and javascript scripting.\n\nOnce a plugin is activated, it will execute the plugin with a ClassNode ArrayList of every single class loaded in BCV, this allows the user to handle it completely using ASM.\n\n## Instructions to compile\n\nJust clone this repo and run ``mvn package``. It's that simple!\n\n## Working on the source\n\nOpen the Maven project (e.g. in IntelliJ, open the ``pom.xml`` as a project file).\n\n## UI Is Lagging\nChange the theme to your systems. Go into `View-\u003eVisual Settings-\u003eWindow Theme` and select `System Theme`.\n\n## Java Heap Space Issues (java.lang.OutOfMemoryError)\nStart BCV with more RAM, e.g. `java -Xmx3G -jar BCV.jar`\n\n## File Permission Issues (java.io.FileNotFoundException)\nRight click on the jar file, go to Properties, and select Unblock under Security at the bottom of the General tab.\n\n## APK File Permission Issues (java.io.FileNotFoundException)\nRun BCV as administrator.\n\n#### Are you a Java Reverse Engineer? Do you want to learn?\nJoin The Bytecode Club Today! - https://the.bytecode.club\n","funding_links":[],"categories":["\u003ca id=\"2110ded2aa5637fa933cc674bc33bf21\"\u003e\u003c/a\u003e工具"],"sub_categories":["\u003ca id=\"bb9f8e636857320abf0502c19af6c763\"\u003e\u003c/a\u003eDebug\u0026\u0026调试"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkonloch%2Fbytecode-viewer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkonloch%2Fbytecode-viewer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkonloch%2Fbytecode-viewer/lists"}