5 ms·
You can start using Java 8 as soon as you are willing to move. I don't think there are many breaking changes in the new version. Just give it a few months to be
by huherto 13y ago
You can start using Java 8 as soon as you are willing to move. I don't think there are many breaking changes in the new version. Just give it a few months to be really stable. Last week , it took me around ten minutes to move one application from 6 to 7.
- georgemcbay 13y ago"You can start using Java 8 as soon as you are willing to move." As long as you aren't writing Java code on Android, in which case you're still stuck at Java 6 (with a very small subset of Java 7 features that were added 3 years after Java 7 came out). Not the fault of the Java language, really, but it is incredibly annoying how unclear Google has been on the future of their dialect of Java post the Oracle lawsuit.
- riffraff 13y agoI have been waiting for servlet 3.0 on App Engine since 2010 https://code.google.com/p/googleappengine/issues/detail?id=3091 https://code.google.com/p/googleappengine/issues/detail?id=3... The funny thing is that google's own GWT requires it now.
- timothyb89 13y agoIt's worth noting that Android 4.4 does support pretty much all JDK7 features (multicatch / try with resources / etc), finally. I've run into the occasional missing method from some of the newer class libraries, but nothing too serious. Of course, if this is any indication it'll be several years before its safe to use even JDK7 features considering Android's update trends, let alone JDK8 ...
- pjmlp 13y agoThis has made me use C++ for my hobby graphics programming on Android instead. The NDK has all the support I need, when coupled with something like Qt/SDL/openFramerworks and C++11 feels better than Google's Java fork.
- vans 13y agoyou should consider using Scala on android. works really well for my projects.
- smrtinsert 13y agoWhich scala android project are you using?
- notimetorelax 13y agoThere are quite a few breaking changes in Java 8, here's the official compatibility guide: http://www.oracle.com/technetwork/java/javase/8-compatibility-guide-2156366.html http://www.oracle.com/technetwork/java/javase/8-compatibilit... One worth noting: If existing code is using Proxy.getProxyClass and the Constructor.newInstance method to create a proxy instance, it will fail with IllegalAccessException. RFE 4487672
- RyanZAG 13y agoWhy would you ever do that..? If your production code is using those kind of proxies, it must be one terrible mess. First order of businesses would be to fix the code at the very least.
- notimetorelax 13y agoThis used to be the right way to create dynamic proxies. Why one would do this is another discussion. For completeness here's a link to the usage in Spring: https://github.com/spring-projects/spring-framework/search?q=Proxy.getProxyClass https://github.com/spring-projects/spring-framework/search?q...
- RyanZAG 13y agoThe Spring code is still fine. You didn't quote the entire advisory: > If existing code is using Proxy.getProxyClass and the Constructor.newInstance method to create a proxy instance, it will fail with IllegalAccessException if the caller is not in the same runtime package as the non-public proxy interface. For such code, it requires a source change to either (1) call Constructor.setAccessible to set the accessible flag to true, or (2) use the Proxy.newProxyInstance convenience method. To end up in that specific condition is fairly difficult and usually means something is wrong with the code to begin with. It's still a very easy fix in any event (adding in 1 extra line of code before the call).
- fhars 13y ago"java.lang.UnsupportedClassVersionError: Test : Unsupported major.minor version 51.0" (yeah, shouldn't happen in the best of all possible worlds, but may still happen anyway)