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

Jason Mihalick edited comment on MSHADE-195 at 12/1/15 5:33 PM:
----------------------------------------------------------------

The following work-around is now getting us past this problem. (Thanks [~tsz] 
for the initial suggestion that a workaround was possible via 
maven-source-plugin configuration.)

In my pom.xml, I added this to my pluginManagement section:

{code:xml}
      <plugin>
        <artifactId>maven-source-plugin</artifactId>
        <version>2.1.2</version>  <!-- your version may be different -->
        <executions>
          <execution>
            <id>default</id>
            <phase>none</phase>
          </execution>
        </executions>
      </plugin>
{code}

The resulting effective pom (mvn help:effective-pom) then has this in the 
build/plugin section:

{code:xml}
      <plugin>
        <artifactId>maven-source-plugin</artifactId>
        <version>2.1.2</version> 
        <executions>
          <execution>
            <phase>none</phase>
            <goals>
              <goal>jar-no-fork</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
{code}

which still results in the sources jar being produced, but attached only once 
instead of twice:

{noformat}
build   01-Dec-2015 12:09:55    [INFO] [INFO] >>> maven-source-plugin:2.1.2:jar 
(attach-sources) > generate-sources @ tep-core >>>
build   01-Dec-2015 12:09:55    [INFO] [INFO] 
build   01-Dec-2015 12:09:55    [INFO] [INFO] --- 
maven-enforcer-plugin:1.4:enforce (enforce-java-version) @ tep-core ---
build   01-Dec-2015 12:09:55    [INFO] [INFO] 
build   01-Dec-2015 12:09:55    [INFO] [INFO] <<< maven-source-plugin:2.1.2:jar 
(attach-sources) < generate-sources @ tep-core <<<
build   01-Dec-2015 12:09:55    [INFO] [INFO] 
build   01-Dec-2015 12:09:55    [INFO] [INFO] --- maven-source-plugin:2.1.2:jar 
(attach-sources) @ tep-core ---
build   01-Dec-2015 12:09:56    [INFO] [INFO] Building jar: 
/appl/bamboo-home/xml-data/build-dir/131073/PUBS-TEP-PRE/target/checkout/target/tep-core-3.0.10-sources.jar
build   01-Dec-2015 12:09:56    [INFO] [INFO] 
build   01-Dec-2015 12:09:56    [INFO] [INFO] --- 
maven-javadoc-plugin:2.9.1:jar (attach-javadocs) @ tep-core ---

...

build   01-Dec-2015 12:10:17    [INFO] [INFO] --- 
maven-install-plugin:2.4:install (default-install) @ tep-core ---
build   01-Dec-2015 12:10:17    [INFO] [INFO] Installing 
/appl/bamboo-home/xml-data/build-dir/131073/PUBS-TEP-PRE/target/checkout/target/tep-core-3.0.10.jar
 to /appl/.m2/repository/org/zzz/tep-core/3.0.10/tep-core-3.0.10.jar
build   01-Dec-2015 12:10:17    [INFO] [INFO] Installing 
/appl/bamboo-home/xml-data/build-dir/131073/PUBS-TEP-PRE/target/checkout/pom.xml
 to /appl/.m2/repository/org/zzz/tep-core/3.0.10/tep-core-3.0.10.pom
build   01-Dec-2015 12:10:17    [INFO] [INFO] Installing 
/appl/bamboo-home/xml-data/build-dir/131073/PUBS-TEP-PRE/target/checkout/target/tep-core-3.0.10-sources.jar
 to /appl/.m2/repository/org/zzz/tep-core/3.0.10/tep-core-3.0.10-sources.jar
build   01-Dec-2015 12:10:17    [INFO] [INFO] Installing 
/appl/bamboo-home/xml-data/build-dir/131073/PUBS-TEP-PRE/target/checkout/target/tep-core-3.0.10-javadoc.jar
 to /appl/.m2/repository/org/zzz/tep-core/3.0.10/tep-core-3.0.10-javadoc.jar

...

build   01-Dec-2015 12:10:17    [INFO] [INFO] --- 
maven-deploy-plugin:2.7:deploy (default-deploy) @ tep-core ---
build   01-Dec-2015 12:10:17    [INFO] [INFO] Uploading: 
https://developer.zzz.org/maven/content/repositories/pubs-cols-release/org/zzz/tep-core/3.0.10/tep-core-3.0.10.jar
build   01-Dec-2015 12:10:17    [INFO] [INFO] Uploaded: 
https://developer.zzz.org/maven/content/repositories/pubs-cols-release/org/zzz/tep-core/3.0.10/tep-core-3.0.10.jar
 (369 KB at 280.8 KB/sec)
build   01-Dec-2015 12:10:17    [INFO] [INFO] Uploading: 
https://developer.zzz.org/maven/content/repositories/pubs-cols-release/org/zzz/tep-core/3.0.10/tep-core-3.0.10.pom
build   01-Dec-2015 12:10:18    [INFO] [INFO] Uploaded: 
https://developer.zzz.org/maven/content/repositories/pubs-cols-release/org/zzz/tep-core/3.0.10/tep-core-3.0.10.pom
 (13 KB at 18.9 KB/sec)
build   01-Dec-2015 12:10:18    [INFO] [INFO] Downloading: 
https://developer.zzz.org/maven/content/repositories/pubs-cols-release/org/zzz/tep-core/maven-metadata.xml
build   01-Dec-2015 12:10:18    [INFO] [INFO] Downloaded: 
https://developer.zzz.org/maven/content/repositories/pubs-cols-release/org/zzz/tep-core/maven-metadata.xml
 (2 KB at 6.8 KB/sec)
build   01-Dec-2015 12:10:18    [INFO] [INFO] Uploading: 
https://developer.zzz.org/maven/content/repositories/pubs-cols-release/org/zzz/tep-core/maven-metadata.xml
build   01-Dec-2015 12:10:19    [INFO] [INFO] Uploaded: 
https://developer.zzz.org/maven/content/repositories/pubs-cols-release/org/zzz/tep-core/maven-metadata.xml
 (2 KB at 2.3 KB/sec)
build   01-Dec-2015 12:10:19    [INFO] [INFO] Uploading: 
https://developer.zzz.org/maven/content/repositories/pubs-cols-release/org/zzz/tep-core/3.0.10/tep-core-3.0.10-sources.jar
build   01-Dec-2015 12:10:19    [INFO] [INFO] Uploaded: 
https://developer.zzz.org/maven/content/repositories/pubs-cols-release/org/zzz/tep-core/3.0.10/tep-core-3.0.10-sources.jar
 (112 KB at 171.9 KB/sec)
build   01-Dec-2015 12:10:19    [INFO] [INFO] Uploading: 
https://developer.zzz.org/maven/content/repositories/pubs-cols-release/org/zzz/tep-core/3.0.10/tep-core-3.0.10-javadoc.jar
build   01-Dec-2015 12:10:20    [INFO] [INFO] Uploaded: 
https://developer.zzz.org/maven/content/repositories/pubs-cols-release/org/zzz/tep-core/3.0.10/tep-core-3.0.10-javadoc.jar
 (369 KB at 501.7 KB/sec)
build   01-Dec-2015 12:10:20    [INFO] [INFO] 
------------------------------------------------------------------------
build   01-Dec-2015 12:10:20    [INFO] [INFO] BUILD SUCCESS
build   01-Dec-2015 12:10:20    [INFO] [INFO] 
------------------------------------------------------------------------
build   01-Dec-2015 12:10:20    [INFO] [INFO] Total time: 01:23 min
build   01-Dec-2015 12:10:20    [INFO] [INFO] Finished at: 
2015-12-01T12:10:20-05:00
build   01-Dec-2015 12:10:20    [INFO] [INFO] Final Memory: 25M/455M
build   01-Dec-2015 12:10:20    [INFO] [INFO] 
------------------------------------------------------------------------

{noformat}


was (Author: jrmihalick):
The following work-around is now getting us past this problem.

In my pom.xml, I added this to my pluginManagement section:

{code:xml}
      <plugin>
        <artifactId>maven-source-plugin</artifactId>
        <version>2.1.2</version>  <!-- your version may be different -->
        <executions>
          <execution>
            <id>default</id>
            <phase>none</phase>
          </execution>
        </executions>
      </plugin>
{code}

The resulting effective pom (mvn help:effective-pom) then has this in the 
build/plugin section:

{code:xml}
      <plugin>
        <artifactId>maven-source-plugin</artifactId>
        <version>2.1.2</version> 
        <executions>
          <execution>
            <phase>none</phase>
            <goals>
              <goal>jar-no-fork</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
{code}

which still results in the sources jar being produced, but attached only once 
instead of twice:

{noformat}
build   01-Dec-2015 12:09:55    [INFO] [INFO] >>> maven-source-plugin:2.1.2:jar 
(attach-sources) > generate-sources @ tep-core >>>
build   01-Dec-2015 12:09:55    [INFO] [INFO] 
build   01-Dec-2015 12:09:55    [INFO] [INFO] --- 
maven-enforcer-plugin:1.4:enforce (enforce-java-version) @ tep-core ---
build   01-Dec-2015 12:09:55    [INFO] [INFO] 
build   01-Dec-2015 12:09:55    [INFO] [INFO] <<< maven-source-plugin:2.1.2:jar 
(attach-sources) < generate-sources @ tep-core <<<
build   01-Dec-2015 12:09:55    [INFO] [INFO] 
build   01-Dec-2015 12:09:55    [INFO] [INFO] --- maven-source-plugin:2.1.2:jar 
(attach-sources) @ tep-core ---
build   01-Dec-2015 12:09:56    [INFO] [INFO] Building jar: 
/appl/bamboo-home/xml-data/build-dir/131073/PUBS-TEP-PRE/target/checkout/target/tep-core-3.0.10-sources.jar
build   01-Dec-2015 12:09:56    [INFO] [INFO] 
build   01-Dec-2015 12:09:56    [INFO] [INFO] --- 
maven-javadoc-plugin:2.9.1:jar (attach-javadocs) @ tep-core ---

...

build   01-Dec-2015 12:10:17    [INFO] [INFO] --- 
maven-install-plugin:2.4:install (default-install) @ tep-core ---
build   01-Dec-2015 12:10:17    [INFO] [INFO] Installing 
/appl/bamboo-home/xml-data/build-dir/131073/PUBS-TEP-PRE/target/checkout/target/tep-core-3.0.10.jar
 to /appl/.m2/repository/org/zzz/tep-core/3.0.10/tep-core-3.0.10.jar
build   01-Dec-2015 12:10:17    [INFO] [INFO] Installing 
/appl/bamboo-home/xml-data/build-dir/131073/PUBS-TEP-PRE/target/checkout/pom.xml
 to /appl/.m2/repository/org/zzz/tep-core/3.0.10/tep-core-3.0.10.pom
build   01-Dec-2015 12:10:17    [INFO] [INFO] Installing 
/appl/bamboo-home/xml-data/build-dir/131073/PUBS-TEP-PRE/target/checkout/target/tep-core-3.0.10-sources.jar
 to /appl/.m2/repository/org/zzz/tep-core/3.0.10/tep-core-3.0.10-sources.jar
build   01-Dec-2015 12:10:17    [INFO] [INFO] Installing 
/appl/bamboo-home/xml-data/build-dir/131073/PUBS-TEP-PRE/target/checkout/target/tep-core-3.0.10-javadoc.jar
 to /appl/.m2/repository/org/zzz/tep-core/3.0.10/tep-core-3.0.10-javadoc.jar

...

build   01-Dec-2015 12:10:17    [INFO] [INFO] --- 
maven-deploy-plugin:2.7:deploy (default-deploy) @ tep-core ---
build   01-Dec-2015 12:10:17    [INFO] [INFO] Uploading: 
https://developer.zzz.org/maven/content/repositories/pubs-cols-release/org/zzz/tep-core/3.0.10/tep-core-3.0.10.jar
build   01-Dec-2015 12:10:17    [INFO] [INFO] Uploaded: 
https://developer.zzz.org/maven/content/repositories/pubs-cols-release/org/zzz/tep-core/3.0.10/tep-core-3.0.10.jar
 (369 KB at 280.8 KB/sec)
build   01-Dec-2015 12:10:17    [INFO] [INFO] Uploading: 
https://developer.zzz.org/maven/content/repositories/pubs-cols-release/org/zzz/tep-core/3.0.10/tep-core-3.0.10.pom
build   01-Dec-2015 12:10:18    [INFO] [INFO] Uploaded: 
https://developer.zzz.org/maven/content/repositories/pubs-cols-release/org/zzz/tep-core/3.0.10/tep-core-3.0.10.pom
 (13 KB at 18.9 KB/sec)
build   01-Dec-2015 12:10:18    [INFO] [INFO] Downloading: 
https://developer.zzz.org/maven/content/repositories/pubs-cols-release/org/zzz/tep-core/maven-metadata.xml
build   01-Dec-2015 12:10:18    [INFO] [INFO] Downloaded: 
https://developer.zzz.org/maven/content/repositories/pubs-cols-release/org/zzz/tep-core/maven-metadata.xml
 (2 KB at 6.8 KB/sec)
build   01-Dec-2015 12:10:18    [INFO] [INFO] Uploading: 
https://developer.zzz.org/maven/content/repositories/pubs-cols-release/org/zzz/tep-core/maven-metadata.xml
build   01-Dec-2015 12:10:19    [INFO] [INFO] Uploaded: 
https://developer.zzz.org/maven/content/repositories/pubs-cols-release/org/zzz/tep-core/maven-metadata.xml
 (2 KB at 2.3 KB/sec)
build   01-Dec-2015 12:10:19    [INFO] [INFO] Uploading: 
https://developer.zzz.org/maven/content/repositories/pubs-cols-release/org/zzz/tep-core/3.0.10/tep-core-3.0.10-sources.jar
build   01-Dec-2015 12:10:19    [INFO] [INFO] Uploaded: 
https://developer.zzz.org/maven/content/repositories/pubs-cols-release/org/zzz/tep-core/3.0.10/tep-core-3.0.10-sources.jar
 (112 KB at 171.9 KB/sec)
build   01-Dec-2015 12:10:19    [INFO] [INFO] Uploading: 
https://developer.zzz.org/maven/content/repositories/pubs-cols-release/org/zzz/tep-core/3.0.10/tep-core-3.0.10-javadoc.jar
build   01-Dec-2015 12:10:20    [INFO] [INFO] Uploaded: 
https://developer.zzz.org/maven/content/repositories/pubs-cols-release/org/zzz/tep-core/3.0.10/tep-core-3.0.10-javadoc.jar
 (369 KB at 501.7 KB/sec)
build   01-Dec-2015 12:10:20    [INFO] [INFO] 
------------------------------------------------------------------------
build   01-Dec-2015 12:10:20    [INFO] [INFO] BUILD SUCCESS
build   01-Dec-2015 12:10:20    [INFO] [INFO] 
------------------------------------------------------------------------
build   01-Dec-2015 12:10:20    [INFO] [INFO] Total time: 01:23 min
build   01-Dec-2015 12:10:20    [INFO] [INFO] Finished at: 
2015-12-01T12:10:20-05:00
build   01-Dec-2015 12:10:20    [INFO] [INFO] Final Memory: 25M/455M
build   01-Dec-2015 12:10:20    [INFO] [INFO] 
------------------------------------------------------------------------

{noformat}

> createSourcesJar with source:jar-no-fork causes sources.jar to be deployed 
> twice, causing the build to fail
> -----------------------------------------------------------------------------------------------------------
>
>                 Key: MSHADE-195
>                 URL: https://issues.apache.org/jira/browse/MSHADE-195
>             Project: Maven Shade Plugin
>          Issue Type: Bug
>    Affects Versions: 2.3, 2.4
>            Reporter: Esko Luontola
>             Fix For: waiting-for-feedback, 2.4.3
>
>         Attachments: MSHADE-195-example.zip
>
>
> The workaround described in https://issues.apache.org/jira/browse/MSHADE-120 
> (i.e. running maven-source-plugin's jar-no-fork goal before shading) causes 
> the problem that Maven will install and deploy the same sources.jar file 
> twice:
> {noformat}
> [INFO] --- maven-install-plugin:2.5.2:install (default-install) @ 
> pricing-client ---
> [INFO] Installing xxx/pricing-client/target/pricing-client-0-SNAPSHOT.jar to 
> xxx/pricing-client/0-SNAPSHOT/pricing-client-0-SNAPSHOT.jar
> [INFO] Installing xxx/pricing-client/target/dependency-reduced-pom.xml to 
> xxx/pricing-client/0-SNAPSHOT/pricing-client-0-SNAPSHOT.pom
> [INFO] Installing 
> xxx/pricing-client/target/pricing-client-0-SNAPSHOT-sources.jar to 
> xxx/pricing-client/0-SNAPSHOT/pricing-client-0-SNAPSHOT-sources.jar
> [INFO] Installing 
> xxx/pricing-client/target/pricing-client-0-SNAPSHOT-sources.jar to 
> xxx/pricing-client/0-SNAPSHOT/pricing-client-0-SNAPSHOT-sources.jar
> {noformat}
> With maven-install-plugin this doesn't matter that much, but with 
> maven-deploy-plugin it *fails the build*, because it tries to upload the 
> sources.jar twice to the Maven repository and _Nexus doesn't allow that_:
> {noformat}
> [ERROR] Failed to execute goal 
> org.apache.maven.plugins:maven-deploy-plugin:2.8.2:deploy (default-deploy) on 
> project project: Failed to deploy artifacts: Could not transfer artifact 
> xxx.availability:availability-client:jar:sources:1.0.24 from/to xxx-releases 
> (http://xxx/nexus/content/repositories/releases): Failed to transfer file: 
> http://xxx/nexus/content/repositories/releases/xxxx/availability/availability-client/1.0.24/availability-client-1.0.24-sources.jar.
>  Return code is: 400, ReasonPhrase: Bad Request.
> {noformat}
> I'm suspecting this to be something like the maven-source-plugin and 
> maven-shade-plugin both attaching the same sources.jar to the build, when 
> only one of them should do it. This problem only happens with the sources jar 
> and not the main artifact, so a trick similar to replacing the main artifact 
> is needed also for the sources jar.
> h4. Workaround
> Configure maven-source-plugin with {{<attach>false</attach>}}. Then the shade 
> plugin will find the sources and include them in the shaded sources jar, but 
> the sources jar won't be attached to the build twice.



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

Reply via email to