Giter VIP home page Giter VIP logo

jd-intellij's Introduction

JD-IntelliJ

JD-IntelliJ is a plug-in for IntelliJ IDEA, initiated by Brice Dutheil. It uses the Java Decompiler binaries It allows you to display all the Java sources during your debugging process, even if you do not have them all. Currently, the project is under development. The Java sources are hosted on Bitbucket. Your contributions are welcome. Also note that it is possible to decompile jars/classes with JD-GUI (can be found on the official site).

Warning

This plugin is currently not maintained, due to lack of time and the availablity of a decompiler within IntelliJ IDEA itself (even the community version). For reference it has been know to be broken since IntelliJ IDEA 2016 since internal IntelliJ IDEA API changes.

Notes

It is the official Java Decompiler plugin for IntelliJ IDEA. The plugin should work from IntelliJ IDEA 10.5.x to the latest stable version (12 as of this writing).

Last but not the least, all the credit for decompilation stuff must go to Emmanuel Dupuy, who is the author of Java Decompiler.

Screenshots

JD-IntelliJ in action

Installation

From the JetBrains repository

The plugin is deployed on the publin JetBrains IntelliJ repository, to install it go to the Settings dialog window > Plugins pane > Browse Repositories dialog window, then search for Java Decompiler.

From the zip archive

It is also possible to install JD-IntelliJ from a file (if compiled from the source), to the Settings dialog window > Plugins pane > Install Plugin from disk...

Don't download from Bitbucket! The Bitbucket link is the zipped mercurial repository, not the actual plugin. You can find the latest version on the IntelliJ plugin site.

Development

First steps

Note that the source code is compiled against the IntelliJ 11 API, the JetBrains introduced a few backward incompatible changes in later versions that would require changes and incompatibilities for earlier verison of IntelliJ. In order to maintain this compitibility for the time being the plugin will still be compiled against IntelliJ 11, compilation should work against a community edition of IntelliJ 11 (which can be found here).

  1. Download the project from Bitbucket.
  2. Import it on IntelliJ IDEA.
  3. Create a new configuration with the type "plugin". Don't forget to set up an IntelliJ IDEA Plugin SDK.
  4. Run the new configuration.

Building it

Don't use the IntelliJ internal plugin deployment feature Prepare plugin module 'jd-intellij' for deployment, it doesn't deal well we have native binaries. in order to deal properly with this matter an ant build script has been created.

So, to create the plugin zip archive (with the custom repository file) in the deploy folder, enter the following at root of the project :

ant make

_note for Linux/Unix: change jd-intellij-unix.properties to reflect the IntelliJ Installation path (default to /usr/local/intelliJ )

To package the archive you should also setup your the properties in your platform related file jd-intellij-osx.properties or jd-intellij-win32.properties, you'll find interesting properties :

# IntelliJ 11 path
idea.home=/Applications/IntelliJ IDEA 11.app
jdk.home=${idea.home}/../../System/Library/Java/JavaVirtualMachines/1.6.0.jdk


# Version of the plugin
current.version=0.1


# Base URL where the plugin ZIP file will be deployed
plugin.deploy.url=http://arkey.fr/jd-intellij

Interesting IntelliJ Plugin development links

For development purpose, you can take a look here :

jd-intellij's People

Contributors

bric3 avatar emmanue1 avatar

Stargazers

Roman avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.