POM documentation for dependencies can be improved
--------------------------------------------------
Key: MGROOVY-183
URL: http://jira.codehaus.org/browse/MGROOVY-183
Project: GMaven
Issue Type: Improvement
Components: site
Affects Versions: 1.0-rc-4
Environment: -
Reporter: Jason Smith
Assignee: Jason Dillon
I am submitting this bug/improvement partially because it makes the build
better, and partially because I want to make sure it is valid.
I think it would be very helpful to have two or three examples like this on the
wiki, where one example shows the setup for the latest production build, one
shows the latest RC build, and maybe a couple of holdouts if there are weird
things (like the ANT bug with 1.5.7, which relies on ANT 1.7.0 - see below).
In the documentation on the wiki, the dependencies constantly refer to the
*gmaven-runtime-1.x* dependency. While this dependency is great for the
plugin, it puts extra, unnecessary artifacts into the production build
artifact. It also ties the groovy-all-minimal JAR into production builds,
which is wonderful for the plugin (since you can easily exclude it), but awful
for complex builds. Here is an example of what I mean, and i am currently
using the 1.5.7 version of this. So it does work. I've verified that my final
build has just the dependencies I want to see.
For Groovy 1.6, this would go into the project dependencies.
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy</artifactId>
<version>1.6-RC-1</version>
</dependency>
And this is the plugin definition I used. Note that I am pulling out
Groovy-all-minimal and replacing it with Groovy-all, since I was having
problems resolving the 1.6-rc-1 Groovy-all-minimal artifact.
<plugin>
<groupId>org.codehaus.groovy.maven</groupId>
<artifactId>gmaven-plugin</artifactId>
<version>1.0-rc-4</version>
<dependencies>
<dependency>
<groupId>org.codehaus.groovy.maven.runtime</groupId>
<artifactId>gmaven-runtime-1.5</artifactId>
<version>1.0-rc-4</version>
<exclusions>
<exclusion>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all-minimal</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>1.6-RC-1</version>
</dependency>
</dependencies>
<configuration>
<providerSelection>1.6</providerSelection>
</configuration>
<executions>
<execution>
<goals>
<goal>generateStubs</goal>
<goal>compile</goal>
<goal>generateTestStubs</goal>
<goal>testCompile</goal>
</goals>
</execution>
</executions>
</plugin>
The markup is similar for the production 1.5.7 version, but I also replaced the
ANT dependencies, since there is a problem in ANT 1.7.0 with resolving file
paths with spaces.
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy</artifactId>
<version>1.5.7</version>
<exclusions>
<exclusion>
<groupId>org.apache.ant</groupId>
<artifactId>ant</artifactId>
</exclusion>
<exclusion>
<groupId>org.apache.ant</groupId>
<artifactId>ant-junit</artifactId>
</exclusion>
<exclusion>
<groupId>org.apache.ant</groupId>
<artifactId>ant-launcher</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.ant</groupId>
<artifactId>ant</artifactId>
<version>1.7.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.ant</groupId>
<artifactId>ant-junit</artifactId>
<version>1.7.1</version>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.ant</groupId>
<artifactId>ant-launcher</artifactId>
<version>1.7.1</version>
<scope>runtime</scope>
</dependency>
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe from this list, please visit:
http://xircles.codehaus.org/manage_email