Hey folks,

So, just a quick note to this community about the tool "error-prone" and its impact on Guice.

Guice modules are not static, because of the configure() method, with dynamic re-wiring based on conditionals or flow-control makes it impossible to statically infer the whole wiring at compile-time. But, this doesn't mean we can't do structural and systematic error checking at compile-time.

To that end, I've had my intern working on a variety of checks for the tool error-prone, a nice tool that wraps javac, and turns certain conditions from static analysis into compile-time errors, with suggested fixes, etc. I highly encourage folks to look at error-prone in general for making some common programming errors compile-time errors, but the Guice community should especially look at it, as we have been adding JSR-330 and Guice-specific checks.

One place we've tried to move the ball forward is to take things that are currently Guice runtime errors, and move them to compile time. I'll make further announcements (or my intern Steven Goldfeder will) once everything is in place and error-prone releases with these changes, but I wanted to encourage people to start checking out the tool now, because it's useful today for other reasons, and if you're using it, then these checks will start catching certain Guice errors early.

Error-prone is an Apache-2.0-licensed open-source project by Google, which can be found at https://code.google.com/p/error-prone/.

Error-prone is integrated with ant, maven, with early access for IntelliJ. It is not (yet) integrated with Eclipse, because it makes strong use of com.sun.* classes to access the abstract syntax tree of the compiler, but some folks are digging into how it can be made to work in an eclipse environment. (Note, if you use M2E maven eclipse integration, you can use Maven->RunAs to execute the maven build from within eclipse, and error-prone will run if it's been integrated into maven.)

regards,
Christian.

Christian Gruber :: Google, Inc. :: Java Core Libraries :: Dependency Injection
email: [email protected] :::: mobile: +1 (646) 807-9839

--
You received this message because you are subscribed to the Google Groups 
"google-guice" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/google-guice.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to