I am having trouble getting trunk to build atm, so I looked at 2.1
first. Right away this bit of magic in the pom failed:
<snip>
<execution>
<id>copy-framework</id>
<phase>process-resources</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<tasks>
<mkdir dir="$
{project.build.directory}/assembly"/>
<copy todir="$
{project.build.directory}/assembly">
<fileset dir="$
{project.build.directory}/unpack/geronimo-framework-${version}">
</fileset>
</copy>
<java
classname="org.apache.geronimo.jaxws.builder.GShellCommandRegistration"
fork="yes" failonerror="true">
<classpath
refid="maven.runtime.classpath"/>
<arg value="$
{project.build.directory}/assembly"/>
<arg value="gsh-wsgen.properties"/>
</java>
</tasks>
</configuration>
</execution
</snip>
Obviously because the antrun classpath did not pick up anything,
easily resolved by using dependencies for this plugin (or moving to
gmaven, still unsure if mvn can handle redef of the plugin with
dependencies in cases like this).
Then build dies missing legal files:
<snip>
[INFO] [tools:verify-legal-files {execution: verify-legal-files}]
[INFO] Checking legal files in: geronimo-tomcat6-javaee5-2.1.5-
SNAPSHOT-bin.zip
[INFO]
------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO]
------------------------------------------------------------------------
[INFO] Artifact does not contain any legal files: geronimo-tomcat6-
javaee5-2.1.5-SNAPSHOT-bin.zip
[INFO]
------------------------------------------------------------------------
[INFO] For more information, run Maven with the -e switch
[INFO]
------------------------------------------------------------------------
[INFO] Total time: 1 minute 13 seconds
[INFO] Finished at: Thu Jun 18 20:03:26 ICT 2009
[INFO] Final Memory: 99M/177M
[INFO]
------------------------------------------------------------------------
</snip>
So at least on 2.1 there looks to be some thing about dependency scope
which is needed for the assembly to function. Once I get trunk to
build I will check there too.
--jason
On Jun 18, 2009, at 4:31 AM, David Jencks wrote:
On Jun 17, 2009, at 1:36 AM, Jason Dillon wrote:
Why do the assemblies in the repository have dependencies? I
realize that they are probably there to facilitate the build, but
shouldn't they all be marked as <scope>provided</scope>?
The reason I think they should be, is that when a user wants to use
the geronimo-maven-plugin with the assembly -bin in the repository,
before they can even download the assembly -bin, first mvn has to
go resolve every single dependency which is used to build that
assembly -bin.
I think this is broken, while I can resolve by adding a tone of
excludes, I think that this problem should be solved so that users
can more easily consume the assembly artifacts we publish to the
repository.
Any one know how easy/feasible with the current stuff (trunk and
2.1.x) it would be to mark all dependencies as provided?
Just thinking about it I don't see why it would cause problems.
Would you like to try it and see if the server at least builds? If
there are no obvious problems I'd be fine with this change.
thanks
david jencks
--jason