MCPcopy
hub / github.com/java-decompiler/jd-gui

github.com/java-decompiler/jd-gui @v1.6.6 sqlite

repository ↗ · DeepWiki ↗ · release v1.6.6 ↗
1,882 symbols 5,074 edges 222 files 64 documented · 3%
README

JD-GUI

JD-GUI, a standalone graphical utility that displays Java sources from CLASS files.

Description

JD-GUI is a standalone graphical utility that displays Java source codes of ".class" files. You can browse the reconstructed source code with the JD-GUI for instant access to methods and fields.

How to build JD-GUI ?

> git clone https://github.com/java-decompiler/jd-gui.git
> cd jd-gui
> ./gradlew build 

generate : - "build/libs/jd-gui-x.y.z.jar" - "build/libs/jd-gui-x.y.z-min.jar" - "build/distributions/jd-gui-windows-x.y.z.zip" - "build/distributions/jd-gui-osx-x.y.z.tar" - "build/distributions/jd-gui-x.y.z.deb" - "build/distributions/jd-gui-x.y.z.rpm"

How to launch JD-GUI ?

  • Double-click on "jd-gui-x.y.z.jar"
  • Double-click on "jd-gui.exe" application from Windows
  • Double-click on "JD-GUI" application from Mac OSX
  • Execute "java -jar jd-gui-x.y.z.jar" or "java -classpath jd-gui-x.y.z.jar org.jd.gui.App"

How to use JD-GUI ?

  • Open a file with menu "File > Open File..."
  • Open recent files with menu "File > Recent Files"
  • Drag and drop files from your file explorer

How to extend JD-GUI ?

> ./gradlew idea 

generate Idea Intellij project

> ./gradlew eclipse

generate Eclipse project

> java -classpath jd-gui-x.y.z.jar;myextension1.jar;myextension2.jar org.jd.gui.App

launch JD-GUI with your extensions

How to uninstall JD-GUI ?

  • Java: Delete "jd-gui-x.y.z.jar" and "jd-gui.cfg".
  • Mac OSX: Drag and drop "JD-GUI" application into the trash.
  • Windows: Delete "jd-gui.exe" and "jd-gui.cfg".

License

Released under the GNU GPL v3.

Donations

Did JD-GUI help you to solve a critical situation? Do you use JD-Eclipse daily? What about making a donation?

paypal paypal

Extension points exported contracts — how you extend this code

UriOpenable (Interface)
uri : scheme '://' path ('?' query)? ('#' fragment)? scheme : 'generic' | 'jar' | 'war' | [14 implementers]
api/src/main/java/org/jd/gui/api/feature/UriOpenable.java
ConfigurationPersister (Interface)
(no doc) [2 implementers]
app/src/main/java/org/jd/gui/service/configuration/ConfigurationPersister.java
PreferencesPanel (Interface)
(no doc) [14 implementers]
api/src/main/java/org/jd/gui/spi/PreferencesPanel.java
TriConsumer (Interface)
(no doc)
app/src/main/java/org/jd/gui/util/function/TriConsumer.java
ContainerFactory (Interface)
(no doc) [12 implementers]
api/src/main/java/org/jd/gui/spi/ContainerFactory.java
ContextualActionsFactory (Interface)
(no doc) [39 implementers]
api/src/main/java/org/jd/gui/spi/ContextualActionsFactory.java
Container (Interface)
(no doc) [7 implementers]
api/src/main/java/org/jd/gui/api/model/Container.java

Core symbols most depended-on inside this repo

add
called by 415
app/src/main/java/org/jd/gui/model/history/History.java
getPath
called by 192
api/src/main/java/org/jd/gui/api/model/Container.java
put
called by 181
app/src/main/java/org/jd/gui/service/mainpanel/ContainerPanelFactoryProvider.java
length
called by 112
api/src/main/java/org/jd/gui/api/model/Container.java
get
called by 106
services/src/main/java/org/jd/gui/util/matcher/DescriptorMatcher.java
getUri
called by 106
api/src/main/java/org/jd/gui/api/model/Container.java
printStackTrace
called by 94
services/src/main/java/org/jd/gui/util/exception/ExceptionUtil.java
toString
called by 82
services/src/main/java/org/jd/gui/util/matcher/DescriptorMatcher.java

Shape

Method 1,541
Class 293
Interface 47
Enum 1

Languages

Java100%

Modules by API surface

services/src/main/java/org/jd/gui/view/component/JavaFilePage.java64 symbols
services/src/main/java/org/jd/gui/service/type/JavaFileTypeFactoryProvider.java59 symbols
services/src/main/java/org/jd/gui/view/component/RoundMarkErrorStrip.java57 symbols
app/src/main/java/org/jd/gui/controller/MainController.java55 symbols
services/src/main/java/org/jd/gui/service/indexer/JavaFileIndexerProvider.java37 symbols
services/src/main/java/org/jd/gui/view/component/TypePage.java31 symbols
app/src/main/java/org/jd/gui/service/mainpanel/ContainerPanelFactoryProvider.java31 symbols
services/src/main/java/org/jd/gui/view/component/DynamicPage.java29 symbols
app/src/main/java/org/jd/gui/view/OpenTypeHierarchyView.java29 symbols
services/src/main/java/org/jd/gui/service/type/ClassFileTypeFactoryProvider.java28 symbols
services/src/main/java/org/jd/gui/service/indexer/ClassFileIndexerProvider.java27 symbols
services/src/main/java/org/jd/gui/view/component/CustomLineNumbersPage.java25 symbols

Used by 1 indexed graphs manifest dependencies, hub-wide

For agents

$ claude mcp add jd-gui \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact