I started doing a memory analysis of my Android app and was quite surprised 
to find that in memory there were a bunch of Java strings holding binding 
errors inside a child injector.  These errors are apparently not reported 
upon injector creation.  I wrote unit tests for the erroneous bindings and 
as expected, they caused a runtime binding error.  

It looks like the errors are stored in memory after constructing the 
injector but only thrown when a client object requests that the erroneous 
object is be injected.  My integration tests somehow didn't pick up these 
binding errors and the errors are wasting significant runtime memory.

Running and poking around through memory dumps is not a terribly feasible 
way to find these.  Is there a strict error checking/reporting feature for 
Guice to give me the information on all broken bindings at the time the 
injector is created?  Is there a reason this isn't the default behavior?


-- 
You received this message because you are subscribed to the Google Groups 
"google-guice" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-guice/-/CTwivsMm9wEJ.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-guice?hl=en.

Reply via email to