[ 
https://issues.apache.org/jira/browse/MDEPLOY-198?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14613664#comment-14613664
 ] 

Robert Scholte commented on MDEPLOY-198:
----------------------------------------

{quote:title=comment from MDEPLOY-197}
Hi Robert Scholte,
 thanks for the feedback.
 I can't speak here for the deploy:deploy-file. However, the problem I reported 
in MDEPLOY-198 shows a valid use-case where a developer may not want to upload 
an artifact twice.
 What happens is kind of simple. The default-deploy will be executed before the 
java-doc and sources are build. Therefore the default-deploy will not upload 
them and we simply can't put the generation of the files before the 
default-deploy because it's automatically attached. Hence we either need to set 
the generation of the java-doc to a different phase OR introduce an second 
configuration of a deploy. However, when we create an additional configuration, 
the artifacts will be uploaded twice (and the javadocs+sources). 
 When I add the configuration to skip the duplicate artifact, it will not be 
uploaded at all because the default-deploy and the custom-deploy share the same 
configuration (you can test this with my attached example).

I also think that it should be totally up the the pom-writer where he want's to 
create javadoc and source's (e.g. in deploy).
 I haven't tested with deploy:file but I would say it's kind of the same 
problem here.

Maybe a more reliable test would be something like: 
 if the md5-sum of the artifact matches, skip the upload and not just skip it 
at all, if the artifact is present...
{quote}

Hi [~TheSnoozer], copied your comment to this issue.
thanks for the example (although it can't be built), it gave me enough info 
about your issue. However, I still don't understand why you chose to go for a 
second execution of the deploy goal, rather then changing the phases. Actually, 
the default phase for both {{sources:jar-no-fork}} and {{javadoc:jar}} is 
package. IMO after the {{package}} phase, the project should be in such a state 
that it shouldn't matter if you want to {{install}} or {{deploy}} this project. 
So by simplifying for {{pom.xml}} (remove the phases for the {{attach-sources}} 
and {{attach-javadoc}} executions and removing the whole executions-block from 
the maven-deploy-plugin) you will get the desired result.

> deploy:deploy in some cases upload a file twice
> -----------------------------------------------
>
>                 Key: MDEPLOY-198
>                 URL: https://issues.apache.org/jira/browse/MDEPLOY-198
>             Project: Maven Deploy Plugin
>          Issue Type: Bug
>          Components: deploy:deploy
>    Affects Versions: 2.8.2
>            Reporter: S L
>            Priority: Minor
>         Attachments: hello-maven-plugin.zip
>
>
> This is a similar issue to MDEPLOY-197 and if you feel that is this is the 
> same problem feel free to close it as duplicate.
> However, in some cases when using the maven-deploy-plugin the artificat will 
> be uploaded twice. Example will be attached.
> In my example I craft sources & javadoc in the deploy-phase and have an 
> additional maven-deploy-plugin-definition which also be be executed in 
> deploy. However the default-deploy will upload the final artifact as well as 
> my custom tailored maven-deploy-plugin-definition and therefore the artifcat 
> will be uploaded twice.
> In the zip there is also the build log where I replaced all sensitive 
> information.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to