You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Shane Isbell (JIRA)" <ji...@codehaus.org> on 2007/02/08 20:15:44 UTC

[jira] Created: (NMAVEN-2) NMaven Support for Classifiers

NMaven Support for Classifiers
------------------------------

                 Key: NMAVEN-2
                 URL: http://jira.codehaus.org/browse/NMAVEN-2
             Project: NMaven
          Issue Type: Improvement
            Reporter: Shane Isbell
            Priority: Minor


NMaven should support classifiers to allow: 1)  multiple builds (depending on framework) of the NMaven .NET assembly plugins;  2) the use of 3rd party assemblies that target a specific framework version. Support may require a change with Maven core. One possible approach would be that whatever methods (within Maven core) that are invoking ArtifactRepositoryLayout.pathOf(pomArtifact) should set the classifier information within the pomArtifact. 

To provide context of this issue, I prototyped a version of NMaven that supported classifiers but ran into an issue with Maven. NMaven does not put meta-data - like the version or classifier -  in the file name but rather within the artifact directory structure. In the case of version, this is fairly easy to handle because both the pomArtifact and the binaryArtifact contain the version information: the ArtifactRepositoryLayout.pathOf method can append the version to the artifact path. In the case of classifier, the pomArtifact does not contain the classifier information ( artifact.getClassifier() returns null): the ArtifactRepositoryLayout.pathOf method has no way to append the classifier to the artifact path for the pom. Thus under the current Maven version, we are unable to handle transitive dependencies for artifacts with classifiers (due to not finding the pom artifact). 

-- 
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

        

[jira] Commented: (NMAVEN-2) NMaven Support for Classifiers

Posted by "Shane Isbell (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/NMAVEN-2?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_89830 ] 

Shane Isbell commented on NMAVEN-2:
-----------------------------------

Some discussions occurred on the nmaven-dev list on this issue. According to Brett, the intended behavior of maven is to have one pom for multiple classifiers. Defaulting to this behavior may solve the issue, but still need to investigate the implications since NMaven is centered about the nmaven-settings file, not the profiles within the pom.xml file.

> NMaven Support for Classifiers
> ------------------------------
>
>                 Key: NMAVEN-2
>                 URL: http://jira.codehaus.org/browse/NMAVEN-2
>             Project: NMaven
>          Issue Type: Improvement
>            Reporter: Shane Isbell
>            Priority: Minor
>
> NMaven should support classifiers to allow: 1)  multiple builds (depending on framework) of the NMaven .NET assembly plugins;  2) the use of 3rd party assemblies that target a specific framework version. Support may require a change with Maven core. One possible approach would be that whatever methods (within Maven core) that are invoking ArtifactRepositoryLayout.pathOf(pomArtifact) should set the classifier information within the pomArtifact. 
> To provide context of this issue, I prototyped a version of NMaven that supported classifiers but ran into an issue with Maven. NMaven does not put meta-data - like the version or classifier -  in the file name but rather within the artifact directory structure. In the case of version, this is fairly easy to handle because both the pomArtifact and the binaryArtifact contain the version information: the ArtifactRepositoryLayout.pathOf method can append the version to the artifact path. In the case of classifier, the pomArtifact does not contain the classifier information ( artifact.getClassifier() returns null): the ArtifactRepositoryLayout.pathOf method has no way to append the classifier to the artifact path for the pom. Thus under the current Maven version, we are unable to handle transitive dependencies for artifacts with classifiers (due to not finding the pom artifact). 

-- 
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

        

[jira] Closed: (NMAVEN-2) NMaven Support for Classifiers

Posted by "Shane Isbell (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/NMAVEN-2?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Shane Isbell closed NMAVEN-2.
-----------------------------

    Resolution: Fixed

> NMaven Support for Classifiers
> ------------------------------
>
>                 Key: NMAVEN-2
>                 URL: http://jira.codehaus.org/browse/NMAVEN-2
>             Project: NMaven
>          Issue Type: Improvement
>            Reporter: Shane Isbell
>            Priority: Minor
>
> NMaven should support classifiers to allow: 1)  multiple builds (depending on framework) of the NMaven .NET assembly plugins;  2) the use of 3rd party assemblies that target a specific framework version. Support may require a change with Maven core. One possible approach would be that whatever methods (within Maven core) that are invoking ArtifactRepositoryLayout.pathOf(pomArtifact) should set the classifier information within the pomArtifact. 
> To provide context of this issue, I prototyped a version of NMaven that supported classifiers but ran into an issue with Maven. NMaven does not put meta-data - like the version or classifier -  in the file name but rather within the artifact directory structure. In the case of version, this is fairly easy to handle because both the pomArtifact and the binaryArtifact contain the version information: the ArtifactRepositoryLayout.pathOf method can append the version to the artifact path. In the case of classifier, the pomArtifact does not contain the classifier information ( artifact.getClassifier() returns null): the ArtifactRepositoryLayout.pathOf method has no way to append the classifier to the artifact path for the pom. Thus under the current Maven version, we are unable to handle transitive dependencies for artifacts with classifiers (due to not finding the pom artifact). 

-- 
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