lexicalscope/jewelcli

Java 7 required now?

Closed this issue · 5 comments

This is really more of a question -- is it intended that Java 7 is required as of the 0.8.5 release? I noticed that it is compiled to target Java 7 since the major version is 51 in the JAR file. This makes it not load in Java 6.

I did it deliberately so that I could use Java 7 features. However, if it is a problem for a lot of people I could probably do it a different way.

I felt that it was a reasonable decision because we have reached the end of public updates for Oracle's Java 6 JDK as of February 2013 (although of course some people may still use it, or a JRE from another vendor).

There are only a couple of minor bug fixes (and a bunch of refactoring, but hopefully no one will notice that!) between 0.8.3 and 0.8.5, so hopefully anyone who is unable to use Java 7 can continue to use 0.8.3 until they can.

If it is causing a significant problem for you (or anyone else), please let me know on this thread and if it is a widespread issue I will look at providing a Java 6 version.

Agree, I'd also like to move to Java 7. I'm supporting a number of users still on Java 6, and there will probably be many of those for a while. One complicating factor is that Java 7 is only available via manual install for OS X (?) and many devs are on OS X. I will probably just leave it on 0.8.3.

Ok, I just discovered jewelcli today and noticed this immediatly, I was actually paying extra close attention to the java version because we have strict requirements that we are now building a small cli app for hpux 11 that has a java 1.6.0update9 ....

I don't know if it's really that big of a deal if you keep this project java 7 from now on, I know some projects that during the migration from java 1.4->java 5 used retroweaver (http://retroweaver.sourceforge.net/), I am just very happy with jewel cli using the 0.8.3 release, it's working great, takes the pain out of working with the cmdline args.

cgi commented

We also use this lib in our project and face the fact, that it's only java 7+ for now.

I don't know that you get with java 7, but recompiling with java 6 target of this project and one of dependency get this lib work. At least for us this is workaround, but if all work on java 5+, why to drop compability only because one of vendors stop make update to JVM? Java world is big enough for many specific requirements, so I think you shouldn't target to new version if you compatible with old one...

Fixed in 0.8.6