0

I'm trying to run an application with java 1.7.2 and its complaining it needs java 1.6 and up.

Is there a way to bypass that check(without recompiling, I don't have the source code)? both for casual use and so I can say that it seems to work in the bug report?

asked Jan 23, 2012 at 9:11
2
  • We've no idea how the check is being performed, which makes it pretty tricky to suggest anything... Commented Jan 23, 2012 at 9:14
  • 1
    Is an application you are trying to run complaining? There might be different ways it could be checking so it might be hard to do something without knowing what it's actually checking for. Commented Jan 23, 2012 at 9:14

1 Answer 1

2

You need to decompile the bytecode to see how the code checks the java version. Maybe the bytecode tries to check a system attribute? In that case, you can reset the attribute to '1.6' before starting the proprietary code.

I can recommend DJ as a decompiling tool.

It is better to decompile the version checking code, to correct it and to recompile it. This will be hard if the code was obfuscated however.

answered Jan 23, 2012 at 9:14
Sign up to request clarification or add additional context in comments.

2 Comments

It was a check of whether the java version string starts with 1.6
For future reference, can you add the decompiled version checking code here? This would help people coming on this question searching for a way to do the version check.

Your Answer

Draft saved
Draft discarded

Sign up or log in

Sign up using Google
Sign up using Email and Password

Post as a guest

Required, but never shown

Post as a guest

Required, but never shown

By clicking "Post Your Answer", you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.