With the recent release of Java 8, already people are asking: should we be doing new development with the new version? Should we upgrade our existing application?
While it makes sense to begin planning for future development in Java 8 and bringing your developers up to speed on the new features such as functional interfaces and lambda expressions, you may wish to wait a while before planning to upgrade anything mission-critical. Even though the community spends a great deal of time and energy making sure the new release of Java is production-ready, there are a huge number of libraries and frameworks out there. Only a bit of time will help shake out any remaining security, performance, or functional issues with the new version.
Furthermore, some libraries may have hidden dependencies on bytecode manipulation, which may cause incompatibilities with Java 8 that may be difficult to spot during testing. As others have noted, the ASM library is a common dependency for many applications and a new version is needed for Java 8. Expect frameworks to be upgraded over a period of time to have support for the newest version.
Every case is different and every company has different requirements, but in the absence of any other factors a safe recommendation may be to wait for one or two minor revisions first before considering using Java 8 for new systems development. In the meantime, it is definitely a good idea to get your development team up to speed on the new features and begin evaluating your libraries and dependencies to see where Java 8 fits into your technology roadmap.