> I'm trying to upgrade my struts2 web app from guice2.0 to guice3.0.
> I'm trying to test it out using maven jetty. I've successfully
> upgraded my pom.xml to use the correct version and groupId for the 3.0
> release, but if I call mvn jetty:run I see that it is trying to
> download guice-3.0-no_deps.jar
>
> which throws a build error and can't be found the central repository?
The guice-3.0-no_deps.jar is a build-time artifact that's used to compile the extensions, but is not required at runtime - it's not on maven central because the Guice team didn't want people depending on this "uber-jar" by mistake. The extensions have an optional dependency to guice-3.0-no_deps.jar (so they can compile) but they also have a non-optional dependency to guice-3.0.jar for the runtime case.
Well-behaved maven plugins should see that the the no_deps dependency is optional and not throw a build error if it's missing, so this sounds like a bug in the jetty plugin. To workaround the Jetty bug you can explicitly hide this dependency as follows:
<dependency>
<groupId>com.google.inject.extensions</groupId>
<artifactId>guice-struts2</artifactId>
<version>3.0</version>
<exclusions>
<exclusion>
<groupId>com.google.inject</groupId>
<artifactId>guice</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.google.inject</groupId>
<artifactId>guice</artifactId>
<version>3.0</version>
</dependency>
Note that we can't do this in the original build pom because we still need the no_deps dependency when doing the original compilation.
> I don't get this error if I don't include any guice extensions such
> as
>
> <dependency>
> <groupId>com.google.inject.extensions</groupId>
> <artifactId>guice-struts2</artifactId>
> <version>3.0</version>
> </dependency>
>
>
> Any ideas?
>
> Thanks
>
> --
> You received this message because you are subscribed to the Google Groups "google-guice" group.
> To post to this group, send email to google...@googlegroups.com.
> To unsubscribe from this group, send email to google-guice...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/google-guice?hl=en.
>