How to let Play/Guice print the unsatisfied dependencies while bootstrap? #11908
Replies: 1 comment 3 replies
-
nested exception is java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException Java EE and CORBA modules are deprecated in JDK 9 and 10, and are removed completely in JDK 11 and later. Thus you need to add manually a JAXB implementation to the runtime, though I'd check with a magnifying glass the dependencies. You didn't mention any kind of version afaik, but I'd highly recommend you look for updates. Most libraries have released newer upstream versions to migrate to Jakarta. These updated versions should come in large quantity with Play Framework 2.9 - but it should be safe to update them in Play 2.8. I'd recommend upgrading, especially to prepare for Play 2.9, as the Jakarta migration is required for getting to JDK 17 plus. JDK 21 as the next LTS release is around the corner ;) Hope that helps, good luck! |
Beta Was this translation helpful? Give feedback.
-
Hi, guys.
My question is: is there any property or config I can use to command Play application to tell me what dependency is missed while bootstrap?
I have a complex legacy Play-based web application, which merged a lot of commits recently, and can not be bootstrapped now. Per my understanding, there must be some unsatisfied "@Inject" was introduced, but the commits are too many, I can't figure out which commit to blame.
We use Guice in several flavors:
and we inject dependencies like:
The application just fails silently, and no info printed to show what is missed.
We hope some config to print the info, like what is done in Spring framework:
Beta Was this translation helpful? Give feedback.
All reactions