Advertisement
If you have a new account but are having problems posting or verifying your account, please email us on hello@boards.ie for help. Thanks :)
Hello all! Please ensure that you are posting a new thread or question in the appropriate forum. The Feedback forum is overwhelmed with questions that are having to be moved elsewhere. If you need help to verify your account contact hello@boards.ie
Hi there,
There is an issue with role permissions that is being worked on at the moment.
If you are having trouble with access or permissions on regional forums please post here to get access: https://www.boards.ie/discussion/2058365403/you-do-not-have-permission-for-that#latest

Java Decompiler

  • 02-04-2010 5:48pm
    #1
    Registered Users, Registered Users 2 Posts: 86 ✭✭


    Anybody know a good java decompiler that actually works? I've tried a few I found on google but they don't seem to work correctly. Anybody got any they could recommend me?


Comments

  • Registered Users, Registered Users 2 Posts: 5,141 ✭✭✭Yakuza


    The one I used to use (when I was programming in Java 10 years ago) was Decafe. I've no idea whether it is still around, or if there isn't something better around now. Hope that helped.


  • Registered Users, Registered Users 2 Posts: 86 ✭✭NerfNerder


    Cheers for that. I'll have a look! Thanks.


  • Registered Users, Registered Users 2 Posts: 86 ✭✭NerfNerder


    Hi just wondering if anyone knows of any other decompilers. I tried the one suggested however it doesn't produce completely accurate results as it produced a load of goto statements in the code which aren't statements in java. Many thanks for any responses.


  • Registered Users, Registered Users 2 Posts: 5,141 ✭✭✭Yakuza


    The author of class you're looking at has probably used an obfuscator, which is designed to hide the inner workings of the class from decompilers, so no matter what one you use, you might never get a 100% accurate code listing.


  • Subscribers Posts: 9,716 ✭✭✭CuLT


    Ah, the ol' reverse-engineering-the-college-project-example technique - a classic ;)


  • Advertisement
  • Closed Accounts Posts: 4,564 ✭✭✭Naikon


    Reverse engineering is a very time consuming process. It's wiser to search for similar code that may or may not conform to the specs you want. Modify it and include citation and you are good to go.


  • Closed Accounts Posts: 8,015 ✭✭✭CreepingDeath


    JAD used to be okay for JDK 1.4.2.
    Might be a little out of date now if your target class used 1.5+ specific features.
    Assumes that there's no obfuscation either.


  • Registered Users, Registered Users 2 Posts: 6 typesafe


    There is also a way to decompile Java files online without installing anything using Online Java Decompiler


  • Registered Users, Registered Users 2 Posts: 23 SaltyJohn


    NerfNerder wrote: »
    Anybody know a good java decompiler that actually works? I've tried a few I found on google but they don't seem to work correctly. Anybody got any they could recommend me?

    Without a doubt the best one I've seen is the one Intellij uses (Fernflower I believe it is called). You end up pretty much with the source code except for a few little differences in enhanced for loops compiling to indexed loops and little compiler optimisations...nothing that really affects the readability of the code. Variables names are gone, but the compiler does a good job of naming them anyway. Only very complex business logic with lots of mathematical or bitwise operations tends to be confusing for me, due to the loss of variable names.


  • Registered Users, Registered Users 2 Posts: 710 ✭✭✭mad turnip


    http://java-decompiler.github.io/

    I've had decent results with this over the past few years.


  • Advertisement
  • Registered Users, Registered Users 2 Posts: 3,636 ✭✭✭dotsman


    Cavaj ("javac" backwards) was pretty good back in the day. It's been so long since I've had to de-compile anything, not sure if there is better out there.


Advertisement