You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Andrew Swan (JIRA)" <ji...@codehaus.org> on 2010/12/14 23:25:58 UTC

[jira] Created: (MSHADE-91) Allow failing of build if overlapping classes are detected

Allow failing of build if overlapping classes are detected
----------------------------------------------------------

                 Key: MSHADE-91
                 URL: http://jira.codehaus.org/browse/MSHADE-91
             Project: Maven 2.x Shade Plugin
          Issue Type: New Feature
    Affects Versions: 1.4
         Environment: N/A
            Reporter: Andrew Swan


Currently if multiple shaded artifacts contain the same fully-qualified class name, the plugin issues a warning on the console like this:

{code}[WARNING] We have a duplicate foo.bar.Baz.class in <path-to-jar-in-local-repo>{code}

In many cases such duplicates are a serious problem, e.g. when they are not the same version of that class.

It would therefore be useful if the plugin (specifically the DefaultShader class) provided the option of failing the build if any duplicates are detected. This would be particularly useful in a continuous integration environment where there's no human operator to check the console output for warnings.

-- 
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] (MSHADE-91) Allow using external Shader implementation

Posted by "Olivier Lamy (JIRA)" <ji...@codehaus.org>.
     [ https://jira.codehaus.org/browse/MSHADE-91?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Olivier Lamy updated MSHADE-91:
-------------------------------

    Fix Version/s: 1.6
         Assignee: Olivier Lamy
    
> Allow using external Shader implementation
> ------------------------------------------
>
>                 Key: MSHADE-91
>                 URL: https://jira.codehaus.org/browse/MSHADE-91
>             Project: Maven 2.x Shade Plugin
>          Issue Type: New Feature
>    Affects Versions: 1.4
>         Environment: N/A
>            Reporter: Andrew Swan
>            Assignee: Olivier Lamy
>             Fix For: 1.6
>
>         Attachments: MSHADE-91.patch
>
>
> Currently if multiple shaded artifacts contain the same fully-qualified class name, the plugin issues a warning on the console like this:
> {code}[WARNING] We have a duplicate foo.bar.Baz.class in <path-to-jar-in-local-repo>{code}
> In many cases such duplicates are a serious problem, e.g. when they are not the same version of that class.
> It would therefore be useful if the plugin (specifically the DefaultShader class) provided the option of failing the build if any duplicates are detected. This would be particularly useful in a continuous integration environment where there's no human operator to check the console output for warnings.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Commented: (MSHADE-91) Allow failing of build if overlapping classes are detected

Posted by "Benson Margulies (JIRA)" <ji...@codehaus.org>.
    [ https://jira.codehaus.org/browse/MSHADE-91?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=272160#comment-272160 ] 

Benson Margulies commented on MSHADE-91:
----------------------------------------

How about an integration test to go with this?

> Allow failing of build if overlapping classes are detected
> ----------------------------------------------------------
>
>                 Key: MSHADE-91
>                 URL: https://jira.codehaus.org/browse/MSHADE-91
>             Project: Maven 2.x Shade Plugin
>          Issue Type: New Feature
>    Affects Versions: 1.4
>         Environment: N/A
>            Reporter: Andrew Swan
>         Attachments: MSHADE-91.patch
>
>
> Currently if multiple shaded artifacts contain the same fully-qualified class name, the plugin issues a warning on the console like this:
> {code}[WARNING] We have a duplicate foo.bar.Baz.class in <path-to-jar-in-local-repo>{code}
> In many cases such duplicates are a serious problem, e.g. when they are not the same version of that class.
> It would therefore be useful if the plugin (specifically the DefaultShader class) provided the option of failing the build if any duplicates are detected. This would be particularly useful in a continuous integration environment where there's no human operator to check the console output for warnings.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] (MSHADE-91) Allow using external Shader implementation

Posted by "Olivier Lamy (JIRA)" <ji...@codehaus.org>.
     [ https://jira.codehaus.org/browse/MSHADE-91?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Olivier Lamy closed MSHADE-91.
------------------------------

    Resolution: Fixed

fixed. with 1.6 you will be able to use your own Shader implementation.
                
> Allow using external Shader implementation
> ------------------------------------------
>
>                 Key: MSHADE-91
>                 URL: https://jira.codehaus.org/browse/MSHADE-91
>             Project: Maven 2.x Shade Plugin
>          Issue Type: New Feature
>    Affects Versions: 1.4
>         Environment: N/A
>            Reporter: Andrew Swan
>            Assignee: Olivier Lamy
>             Fix For: 1.6
>
>         Attachments: MSHADE-91.patch
>
>
> Currently if multiple shaded artifacts contain the same fully-qualified class name, the plugin issues a warning on the console like this:
> {code}[WARNING] We have a duplicate foo.bar.Baz.class in <path-to-jar-in-local-repo>{code}
> In many cases such duplicates are a serious problem, e.g. when they are not the same version of that class.
> It would therefore be useful if the plugin (specifically the DefaultShader class) provided the option of failing the build if any duplicates are detected. This would be particularly useful in a continuous integration environment where there's no human operator to check the console output for warnings.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Updated: (MSHADE-91) Allow failing of build if overlapping classes are detected

Posted by "Andrew Swan (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/MSHADE-91?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andrew Swan updated MSHADE-91:
------------------------------

    Attachment: MSHADE-91.patch

Here's a patch that adds a boolean configuration property called "duplicatesAreFatal", defaulting to "false" to preserve the current behaviour. When set to "true", a "BUILD FAILURE" message is shown, listing all duplications detected by the Shader.

> Allow failing of build if overlapping classes are detected
> ----------------------------------------------------------
>
>                 Key: MSHADE-91
>                 URL: http://jira.codehaus.org/browse/MSHADE-91
>             Project: Maven 2.x Shade Plugin
>          Issue Type: New Feature
>    Affects Versions: 1.4
>         Environment: N/A
>            Reporter: Andrew Swan
>         Attachments: MSHADE-91.patch
>
>
> Currently if multiple shaded artifacts contain the same fully-qualified class name, the plugin issues a warning on the console like this:
> {code}[WARNING] We have a duplicate foo.bar.Baz.class in <path-to-jar-in-local-repo>{code}
> In many cases such duplicates are a serious problem, e.g. when they are not the same version of that class.
> It would therefore be useful if the plugin (specifically the DefaultShader class) provided the option of failing the build if any duplicates are detected. This would be particularly useful in a continuous integration environment where there's no human operator to check the console output for warnings.

-- 
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: (MSHADE-91) Allow failing of build if overlapping classes are detected

Posted by "Andrew Swan (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MSHADE-91?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=247775#action_247775 ] 

Andrew Swan commented on MSHADE-91:
-----------------------------------

One workaround would be to use a custom Shader implementation; is this possible? The Shader field in the ShaderMojo is declared thus:

{code:title=Shader.java}/**
 * @component
 * @required
 * @readonly
 */
private Shader shader;{code}

>From what little I know about Plexus, this seems to indicate that the Shader is not pluggable?

> Allow failing of build if overlapping classes are detected
> ----------------------------------------------------------
>
>                 Key: MSHADE-91
>                 URL: http://jira.codehaus.org/browse/MSHADE-91
>             Project: Maven 2.x Shade Plugin
>          Issue Type: New Feature
>    Affects Versions: 1.4
>         Environment: N/A
>            Reporter: Andrew Swan
>
> Currently if multiple shaded artifacts contain the same fully-qualified class name, the plugin issues a warning on the console like this:
> {code}[WARNING] We have a duplicate foo.bar.Baz.class in <path-to-jar-in-local-repo>{code}
> In many cases such duplicates are a serious problem, e.g. when they are not the same version of that class.
> It would therefore be useful if the plugin (specifically the DefaultShader class) provided the option of failing the build if any duplicates are detected. This would be particularly useful in a continuous integration environment where there's no human operator to check the console output for warnings.

-- 
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] (MSHADE-91) Allow using external Shader implementation

Posted by "Olivier Lamy (JIRA)" <ji...@codehaus.org>.
     [ https://jira.codehaus.org/browse/MSHADE-91?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Olivier Lamy updated MSHADE-91:
-------------------------------

    Summary: Allow using external Shader implementation  (was: Allow failing of build if overlapping classes are detected)
    
> Allow using external Shader implementation
> ------------------------------------------
>
>                 Key: MSHADE-91
>                 URL: https://jira.codehaus.org/browse/MSHADE-91
>             Project: Maven 2.x Shade Plugin
>          Issue Type: New Feature
>    Affects Versions: 1.4
>         Environment: N/A
>            Reporter: Andrew Swan
>             Fix For: 1.6
>
>         Attachments: MSHADE-91.patch
>
>
> Currently if multiple shaded artifacts contain the same fully-qualified class name, the plugin issues a warning on the console like this:
> {code}[WARNING] We have a duplicate foo.bar.Baz.class in <path-to-jar-in-local-repo>{code}
> In many cases such duplicates are a serious problem, e.g. when they are not the same version of that class.
> It would therefore be useful if the plugin (specifically the DefaultShader class) provided the option of failing the build if any duplicates are detected. This would be particularly useful in a continuous integration environment where there's no human operator to check the console output for warnings.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira