The following comment has been added to this issue:
Author: Rafal Krzewski
Created: Thu, 21 Aug 2003 4:30 AM
Body:
I've just noticed a problem with the feature I've proposed (after some discussions
with Norbert Pabis).
Extending a project in the current implementation involves inheriting it's maven.xml
script, and there is intent to inherit project.properties file (though that doesnt'
work - see MAVEN-37: the longest standing maven bug at the time of writing - over 1
year old! I hope it gets fixed by 1.0...)
Both mine original proposal, and dIon's URL variation specify the location of
project.xml file only in the local repo. The two other files are not there, so this
would be a regression in project inheritance functionality.
This brings us to the interesting questions: Is POM euqivalent to project.xml, or is
POM composed of all three files?
In we decide for the first option, this feautre would be of pretty
limited usability, unless we extend maven to somehow know what
projects the user has checked out in source form, and thus be
able to map groupId/artifactId/version to a directory on a local disk.
This calls for some sort of registry that would have to be maintained.
A good subject for a separate discussion...
However if we decide to go down the second route, a new vehicle for POM is needed. The
most straightforward solution is a zip archive that contains a file named project.xml
in it's root folder, and may optionally contain maven.xml and project.properties
files. The maven.xml file may include other jelly scripts and parse additional
properties files, so we might allow the POM archive to contain these as well.
There is another advantage of such POM archives: - you can quickly see how a project
uses Maven to build itself without downloading full source distribution or accessing
their SCM system.
The POM archives would be generated by the POM plugin, and this seems to be a
no-braniner task.
Loading the project from a POM archive should be reasonably easy, provided that Maven
core uses URLs instead of File in a few places.
The difference between loading a local project, and a project referred
through POM archive would be parsing:
jar:file://${projectArtifact.path}!/project.xml instead of
file://${projectLocation}/project.xml
---------------------------------------------------------------------
View the issue:
http://jira.codehaus.org/secure/ViewIssue.jspa?key=MAVEN-699
Here is an overview of the issue:
---------------------------------------------------------------------
Key: MAVEN-699
Summary: add a posibility to extend a project by specifying it's groupId,
artifactId and version
Type: New Feature
Status: Unassigned
Priority: Minor
Time Spent: Unknown
Remaining: Unknown
Project: maven
Components:
Requested POM Additions
Assignee:
Reporter: Rafal Krzewski
Created: Wed, 20 Aug 2003 9:10 AM
Updated: Wed, 20 Aug 2003 9:10 AM
Description:
I propose the following alternative to <extend>project.xml path</extend>
<extendProject>
<groupId>...</groupId>
<artifactId>...</artifactId>
<version>...</version>
</extendProject>
It would look up the pom in the repo (and download it if neccessary).
IMO it's more flexible than relying on filesystem paths.
---------------------------------------------------------------------
JIRA INFORMATION:
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
If you want more information on JIRA, or have a bug to report see:
http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]