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.