You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Jan Koops (JIRA)" <ji...@codehaus.org> on 2006/05/03 14:34:41 UTC

[jira] Commented: (MNG-2060) antlib:deploy doesn't set correct snapshot version

    [ http://jira.codehaus.org/browse/MNG-2060?page=comments#action_64648 ] 

Jan Koops commented on MNG-2060:
--------------------------------

I stepped through the sources:

The main problem seems to be AbstractArtifactTask lacks a method to create a deploymentArtifactRepository (repositoryFactory.createDeploymentArtifactRepository()):
The DepoyTasks uses AbstractArtifactTask.createRemoteArtifactRepository() that calls repositoryFactory.createArtifactRepository(). This method uses the DefaultArtifactRepository( String id, String url, ArtifactRepositoryLayout layout, ArtifactRepositoryPolicy snapshots, ArtifactRepositoryPolicy releases ) constructor which has no way to set the uniqueVersion-boolean to true. So uniqueVersion is always false.
The SnapshotTransformation checks if remoteRepository.isUniqueVersion() and the SNAPSHOT-String is never replaced.



> antlib:deploy doesn't set correct snapshot version
> --------------------------------------------------
>
>          Key: MNG-2060
>          URL: http://jira.codehaus.org/browse/MNG-2060
>      Project: Maven 2
>         Type: Bug

>   Components: Ant tasks
>     Versions: 2.0.2
>  Environment: win xp, mvn 2.0.2, ant 1.6.5
>     Reporter: Michal Stochmialek

>
>
> I'm trying to deploy to maven remote repository jars produced by 
> ant. Those jars are in snapshot version.
> Whole deployment process is going properly, but something is wrong with names
> of deployed files.
> When I'm deploying artifacts using normal 'maven deploy', "SNAPSHOT" in
> the name is replaced by the current timestamp and the snapshot number (for
> instance: "20060105.123437-3").
> But when I'm deploying with antlib, the name isn't changed. "SNAPSHOT" is
> still in the name. And when I deploy snapshot again, the old one is
> replaced by the new one (which also different from behavior of normal 'mvn
> deploy').
> The metadata.xml also is generated incorrectly. Timestamp in snapshot tag is missing:
> <?xml version="1.0" encoding="UTF-8"?><metadata>
>   <groupId>foo</groupId>
>   <artifactId>foo-jar1</artifactId>
>   <version>1.0-SNAPSHOT</version>
>   <versioning>
>     <snapshot>
>       <buildNumber>4</buildNumber>
>     </snapshot>
>     <lastUpdated>20060209111228</lastUpdated>
>   </versioning>
> </metadata>
> Here's an fragment of my ant script:
>   <target name="maven-poms">
>     <artifact:pom id="pom.jar1-jar" file="maven/pom-jar1-jar.xml" />
>     <artifact:pom id="pom.jar2-jar" file="maven/pom-jar2-jar.xml" />
>     <artifact:pom id="pom.jar3-jar" file="maven/pom-jar3--jar.xml" />
>   </target>
>   <target name="maven-install-local" 
>        depends="maven-poms,generate-jars">
>     <artifact:install file="${build.dir}/jar1.jar">
>       <pom refid="pom.jar1-jar"/>
>     </artifact:install>
>     <artifact:install file="${build.dir}/jar2.jar">
>       <pom refid="pom.jar2-jar"/>
>     </artifact:install>
>     <artifact:install file="${build.dir}/jar3.jar">
>       <pom refid="pom.jar3-jar"/>
>     </artifact:install>
>   </target>
>   <target name="maven-deploy-remote" depends="maven-install-local">
>     <artifact:install-provider artifactId="wagon-ssh" version="1.0-alpha-5"/>
>  
>     <artifact:deploy file="${build.dir}/jar1.jar">
>       <pom refid="pom.jar1-jar"/>
>     </artifact:deploy>
>     <artifact:deploy file="${build.dir}/jar2.jar">
>       <pom refid="pom.jar2-jar"/>
>     </artifact:deploy>
>     <artifact:deploy file="${build.dir}/jar3.jar">
>       <pom refid="pom.jar3-jar"/>
>     </artifact:deploy>
>   </target>
> The artifacts poms are in separate files which contain only artifactId, groupId, 
> version, dependencies and remote repository url.
> I also tried to deploy using 'mvn -f pom-file.xml deploy' to check if my repository
> url is specified correctly. And it works. Jar is deployed to remote repository with
> correct version.

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