Hi Brett,

Thanks for the response, answers inline:

2009/9/30 Brett Porter <[email protected]>:
> On 29/09/2009, at 2:16 AM, Mark Hobson wrote:
>> 1) the full SCM checkout of the main project
>
> you are calling from within that, or want to do a checkout?

Yep, the main project is the one where we're executing the assembly
plugin within.  So essentially this part is like the predefined
'project' descriptor:
http://maven.apache.org/plugins/maven-assembly-plugin/descriptor-refs.html#project

>> 2) full SCM checkouts of all dependencies that match a
>> groupId:artifactId pattern (i.e. internal projects)
>
> are these released dependencies or in development snapshots?

These are released dependencies.  They need to be SCM checkouts and
not source artifacts since they need to be buildable, i.e. contain the
POM and any other necessary build resources.

>> 3) a local repository containing the binaries for the unmatched
>> dependencies (i.e. third-party projects)
>
> this can already be done with the assembly plugin.

Got that bit working :)

The aim to end up with a complete offline standalone buildable archive
like this:

bundle.zip
+- build.sh (shell script to invoke Maven build)
+- build.bat (batch file version of above)
+- maven (Maven distributable)
+- jre (Java JRE for Maven)
+- settings.xml (settings to point Maven to local repository)
+- repository (Maven repository of third party artifacts and Maven dependencies)
+- projects (SCM checkouts of internal projects)
   +- project A/
   |  +- pom.xml
   |  +- src/
   |     +- ...
   +- ...

The build would then be invoked by applying the reactor on the
projects dir and pointing at the local repository.

After a brief initial investigation, it looks like I need the following:

- New feature: Add 'project' type to assembly plugin dependencySet
(addresses point 2 above)
- Bug: POM artifacts cannot be excluded from repositories
- Bug: Add 'useTransitiveDependencies' flag to assembly plugin
repository (currently cannot keep excluded artifact's transitive
dependencies)

I'll investigate these points in more depth once I need to do the
work.  I was mainly trying to gather whether it was appropriate to add
this functionality to the assembly plugin.  How did you see the POM
and SCM plugins coming into play here?

Cheers,

Mark

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to