You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Brett Porter (JIRA)" <ji...@codehaus.org> on 2010/04/30 11:04:12 UTC

[jira] Created: (SUREFIRE-615) Surefire providers shouldn't need to download old versions of the library

Surefire providers shouldn't need to download old versions of the library
-------------------------------------------------------------------------

                 Key: SUREFIRE-615
                 URL: http://jira.codehaus.org/browse/SUREFIRE-615
             Project: Maven Surefire
          Issue Type: Improvement
          Components: JUnit 3.x support, Junit 4.x support, Maven Surefire Plugin, TestNG support
    Affects Versions: 2.5
            Reporter: Brett Porter


currently, the Surefire plugin uses resolveTransitively to obtain the Surefire provider (junit, junit4, junit47, testng). Each of these has a compile time dependency on the library itself to interact with their API.

This results in downloading older versions as well as the newer one requested by the project (TestNG 5.7, JUnit 4.0, JUnit 3.8.1). There are two possible solutions to this:
- alter the resolveTranstively method to exclude the artifact that is already available from the project
- set the dependency to 'provided' in the providers POM

-- 
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] Reopened: (SUREFIRE-615) Surefire providers shouldn't need to download old versions of the library

Posted by "Benjamin Bentmann (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/SUREFIRE-615?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Benjamin Bentmann reopened SUREFIRE-615:
----------------------------------------


Since the change, {{PojoSimpleIT}} is failing with
{noformat}
[INFO] [surefire:test {execution: default-test}]
[INFO] Surefire report directory: D:\maven\surefire\surefire-integration-tests\target\test-classes\pojo-simple\target\surefire-reports
org.apache.maven.surefire.booter.SurefireExecutionException: junit.framework.Test; nested exception is java.lang.NoClassDefFoundError: junit.framework.Test
java.lang.NoClassDefFoundError: junit.framework.Test
{noformat}

> Surefire providers shouldn't need to download old versions of the library
> -------------------------------------------------------------------------
>
>                 Key: SUREFIRE-615
>                 URL: http://jira.codehaus.org/browse/SUREFIRE-615
>             Project: Maven Surefire
>          Issue Type: Improvement
>          Components: JUnit 3.x support, Junit 4.x support, Maven Surefire Plugin, TestNG support
>    Affects Versions: 2.5
>            Reporter: Brett Porter
>            Assignee: Stephen Connolly
>             Fix For: 2.6
>
>
> currently, the Surefire plugin uses resolveTransitively to obtain the Surefire provider (junit, junit4, junit47, testng). Each of these has a compile time dependency on the library itself to interact with their API.
> This results in downloading older versions as well as the newer one requested by the project (TestNG 5.7, JUnit 4.0, JUnit 3.8.1). There are two possible solutions to this:
> - alter the resolveTranstively method to exclude the artifact that is already available from the project
> - set the dependency to 'provided' in the providers POM

-- 
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: (SUREFIRE-615) Surefire providers shouldn't need to download old versions of the library

Posted by "Kristian Rosenvold (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/SUREFIRE-615?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=231091#action_231091 ] 

Kristian Rosenvold commented on SUREFIRE-615:
---------------------------------------------

+1 for provided

> Surefire providers shouldn't need to download old versions of the library
> -------------------------------------------------------------------------
>
>                 Key: SUREFIRE-615
>                 URL: http://jira.codehaus.org/browse/SUREFIRE-615
>             Project: Maven Surefire
>          Issue Type: Improvement
>          Components: JUnit 3.x support, Junit 4.x support, Maven Surefire Plugin, TestNG support
>    Affects Versions: 2.5
>            Reporter: Brett Porter
>             Fix For: 2.6
>
>
> currently, the Surefire plugin uses resolveTransitively to obtain the Surefire provider (junit, junit4, junit47, testng). Each of these has a compile time dependency on the library itself to interact with their API.
> This results in downloading older versions as well as the newer one requested by the project (TestNG 5.7, JUnit 4.0, JUnit 3.8.1). There are two possible solutions to this:
> - alter the resolveTranstively method to exclude the artifact that is already available from the project
> - set the dependency to 'provided' in the providers POM

-- 
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: (SUREFIRE-615) Surefire providers shouldn't need to download old versions of the library

Posted by "Marvin Froeder (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/SUREFIRE-615?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=233127#action_233127 ] 

Marvin Froeder commented on SUREFIRE-615:
-----------------------------------------

Larry, FWIW, I fix it and submit a patch 
http://jira.codehaus.org/browse/SUREFIRE-642?focusedCommentId=233126#action_233126

VELO

> Surefire providers shouldn't need to download old versions of the library
> -------------------------------------------------------------------------
>
>                 Key: SUREFIRE-615
>                 URL: http://jira.codehaus.org/browse/SUREFIRE-615
>             Project: Maven Surefire
>          Issue Type: Improvement
>          Components: JUnit 3.x support, Junit 4.x support, Maven Surefire Plugin, TestNG support
>    Affects Versions: 2.5
>            Reporter: Brett Porter
>            Assignee: Stephen Connolly
>             Fix For: 2.6
>
>
> currently, the Surefire plugin uses resolveTransitively to obtain the Surefire provider (junit, junit4, junit47, testng). Each of these has a compile time dependency on the library itself to interact with their API.
> This results in downloading older versions as well as the newer one requested by the project (TestNG 5.7, JUnit 4.0, JUnit 3.8.1). There are two possible solutions to this:
> - alter the resolveTranstively method to exclude the artifact that is already available from the project
> - set the dependency to 'provided' in the providers POM

-- 
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: (SUREFIRE-615) Surefire providers shouldn't need to download old versions of the library

Posted by "Andreas Andreou (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/SUREFIRE-615?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=231820#action_231820 ] 

Andreas Andreou commented on SUREFIRE-615:
------------------------------------------

5.11, tried with 5.12 and 5.13.1. I'll try to recreate this with simpler poms and post a follow up - thx

> Surefire providers shouldn't need to download old versions of the library
> -------------------------------------------------------------------------
>
>                 Key: SUREFIRE-615
>                 URL: http://jira.codehaus.org/browse/SUREFIRE-615
>             Project: Maven Surefire
>          Issue Type: Improvement
>          Components: JUnit 3.x support, Junit 4.x support, Maven Surefire Plugin, TestNG support
>    Affects Versions: 2.5
>            Reporter: Brett Porter
>            Assignee: Stephen Connolly
>             Fix For: 2.6
>
>
> currently, the Surefire plugin uses resolveTransitively to obtain the Surefire provider (junit, junit4, junit47, testng). Each of these has a compile time dependency on the library itself to interact with their API.
> This results in downloading older versions as well as the newer one requested by the project (TestNG 5.7, JUnit 4.0, JUnit 3.8.1). There are two possible solutions to this:
> - alter the resolveTranstively method to exclude the artifact that is already available from the project
> - set the dependency to 'provided' in the providers POM

-- 
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: (SUREFIRE-615) Surefire providers shouldn't need to download old versions of the library

Posted by "Larry Shatzer (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/SUREFIRE-615?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=233128#action_233128 ] 

Larry Shatzer commented on SUREFIRE-615:
----------------------------------------

Thanks Marvin... Voted on SUREFIRE-642. :)

> Surefire providers shouldn't need to download old versions of the library
> -------------------------------------------------------------------------
>
>                 Key: SUREFIRE-615
>                 URL: http://jira.codehaus.org/browse/SUREFIRE-615
>             Project: Maven Surefire
>          Issue Type: Improvement
>          Components: JUnit 3.x support, Junit 4.x support, Maven Surefire Plugin, TestNG support
>    Affects Versions: 2.5
>            Reporter: Brett Porter
>            Assignee: Stephen Connolly
>             Fix For: 2.6
>
>
> currently, the Surefire plugin uses resolveTransitively to obtain the Surefire provider (junit, junit4, junit47, testng). Each of these has a compile time dependency on the library itself to interact with their API.
> This results in downloading older versions as well as the newer one requested by the project (TestNG 5.7, JUnit 4.0, JUnit 3.8.1). There are two possible solutions to this:
> - alter the resolveTranstively method to exclude the artifact that is already available from the project
> - set the dependency to 'provided' in the providers POM

-- 
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: (SUREFIRE-615) Surefire providers shouldn't need to download old versions of the library

Posted by "Stephen Connolly (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/SUREFIRE-615?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=231052#action_231052 ] 

Stephen Connolly commented on SUREFIRE-615:
-------------------------------------------

my preference is the <scope>provided</scope> option, what are other people's thoughts

> Surefire providers shouldn't need to download old versions of the library
> -------------------------------------------------------------------------
>
>                 Key: SUREFIRE-615
>                 URL: http://jira.codehaus.org/browse/SUREFIRE-615
>             Project: Maven Surefire
>          Issue Type: Improvement
>          Components: JUnit 3.x support, Junit 4.x support, Maven Surefire Plugin, TestNG support
>    Affects Versions: 2.5
>            Reporter: Brett Porter
>             Fix For: 2.6
>
>
> currently, the Surefire plugin uses resolveTransitively to obtain the Surefire provider (junit, junit4, junit47, testng). Each of these has a compile time dependency on the library itself to interact with their API.
> This results in downloading older versions as well as the newer one requested by the project (TestNG 5.7, JUnit 4.0, JUnit 3.8.1). There are two possible solutions to this:
> - alter the resolveTranstively method to exclude the artifact that is already available from the project
> - set the dependency to 'provided' in the providers POM

-- 
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: (SUREFIRE-615) Surefire providers shouldn't need to download old versions of the library

Posted by "Stephen Connolly (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/SUREFIRE-615?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Stephen Connolly closed SUREFIRE-615.
-------------------------------------

    Resolution: Fixed
      Assignee: Stephen Connolly

r982995 unless the CI build fails and I have to revert back

> Surefire providers shouldn't need to download old versions of the library
> -------------------------------------------------------------------------
>
>                 Key: SUREFIRE-615
>                 URL: http://jira.codehaus.org/browse/SUREFIRE-615
>             Project: Maven Surefire
>          Issue Type: Improvement
>          Components: JUnit 3.x support, Junit 4.x support, Maven Surefire Plugin, TestNG support
>    Affects Versions: 2.5
>            Reporter: Brett Porter
>            Assignee: Stephen Connolly
>             Fix For: 2.6
>
>
> currently, the Surefire plugin uses resolveTransitively to obtain the Surefire provider (junit, junit4, junit47, testng). Each of these has a compile time dependency on the library itself to interact with their API.
> This results in downloading older versions as well as the newer one requested by the project (TestNG 5.7, JUnit 4.0, JUnit 3.8.1). There are two possible solutions to this:
> - alter the resolveTranstively method to exclude the artifact that is already available from the project
> - set the dependency to 'provided' in the providers POM

-- 
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] Updated: (SUREFIRE-615) Surefire providers shouldn't need to download old versions of the library

Posted by "Brett Porter (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/SUREFIRE-615?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Brett Porter updated SUREFIRE-615:
----------------------------------

    Fix Version/s: 2.6

> Surefire providers shouldn't need to download old versions of the library
> -------------------------------------------------------------------------
>
>                 Key: SUREFIRE-615
>                 URL: http://jira.codehaus.org/browse/SUREFIRE-615
>             Project: Maven Surefire
>          Issue Type: Improvement
>          Components: JUnit 3.x support, Junit 4.x support, Maven Surefire Plugin, TestNG support
>    Affects Versions: 2.5
>            Reporter: Brett Porter
>             Fix For: 2.6
>
>
> currently, the Surefire plugin uses resolveTransitively to obtain the Surefire provider (junit, junit4, junit47, testng). Each of these has a compile time dependency on the library itself to interact with their API.
> This results in downloading older versions as well as the newer one requested by the project (TestNG 5.7, JUnit 4.0, JUnit 3.8.1). There are two possible solutions to this:
> - alter the resolveTranstively method to exclude the artifact that is already available from the project
> - set the dependency to 'provided' in the providers POM

-- 
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: (SUREFIRE-615) Surefire providers shouldn't need to download old versions of the library

Posted by "Benjamin Bentmann (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/SUREFIRE-615?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=231789#action_231789 ] 

Benjamin Bentmann commented on SUREFIRE-615:
--------------------------------------------

What exact version of TestNG? The versions I looked at have a dependency on junit, i.e. your project having a dependency on testng should automatically pull in junit as a transitive dependency. When I came across a similar issue, it was due to a bad POM for testng in my local repo, so it's worth to check whether the POM in your local repo for testng matches the official one on central.

> Surefire providers shouldn't need to download old versions of the library
> -------------------------------------------------------------------------
>
>                 Key: SUREFIRE-615
>                 URL: http://jira.codehaus.org/browse/SUREFIRE-615
>             Project: Maven Surefire
>          Issue Type: Improvement
>          Components: JUnit 3.x support, Junit 4.x support, Maven Surefire Plugin, TestNG support
>    Affects Versions: 2.5
>            Reporter: Brett Porter
>            Assignee: Stephen Connolly
>             Fix For: 2.6
>
>
> currently, the Surefire plugin uses resolveTransitively to obtain the Surefire provider (junit, junit4, junit47, testng). Each of these has a compile time dependency on the library itself to interact with their API.
> This results in downloading older versions as well as the newer one requested by the project (TestNG 5.7, JUnit 4.0, JUnit 3.8.1). There are two possible solutions to this:
> - alter the resolveTranstively method to exclude the artifact that is already available from the project
> - set the dependency to 'provided' in the providers POM

-- 
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: (SUREFIRE-615) Surefire providers shouldn't need to download old versions of the library

Posted by "Andreas Andreou (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/SUREFIRE-615?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=231787#action_231787 ] 

Andreas Andreou commented on SUREFIRE-615:
------------------------------------------

unfortunately, i still get the exception Benjamin reported in my testng tests - i can workaround this by adding a dependency to junit in my project

> Surefire providers shouldn't need to download old versions of the library
> -------------------------------------------------------------------------
>
>                 Key: SUREFIRE-615
>                 URL: http://jira.codehaus.org/browse/SUREFIRE-615
>             Project: Maven Surefire
>          Issue Type: Improvement
>          Components: JUnit 3.x support, Junit 4.x support, Maven Surefire Plugin, TestNG support
>    Affects Versions: 2.5
>            Reporter: Brett Porter
>            Assignee: Stephen Connolly
>             Fix For: 2.6
>
>
> currently, the Surefire plugin uses resolveTransitively to obtain the Surefire provider (junit, junit4, junit47, testng). Each of these has a compile time dependency on the library itself to interact with their API.
> This results in downloading older versions as well as the newer one requested by the project (TestNG 5.7, JUnit 4.0, JUnit 3.8.1). There are two possible solutions to this:
> - alter the resolveTranstively method to exclude the artifact that is already available from the project
> - set the dependency to 'provided' in the providers POM

-- 
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: (SUREFIRE-615) Surefire providers shouldn't need to download old versions of the library

Posted by "Larry Shatzer (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/SUREFIRE-615?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=232600#action_232600 ] 

Larry Shatzer commented on SUREFIRE-615:
----------------------------------------

In my company we have junit excluded from testng, to avoid having developers use JUnit in favor of TestNG, as the standard (Not saying that is the best, but the way they wanted things here). 

Upgrading to Surefire 2.6 causes that same error (the NoClassDefFoundError). I've had to downgrade back to 2.5.

What are my best options?

> Surefire providers shouldn't need to download old versions of the library
> -------------------------------------------------------------------------
>
>                 Key: SUREFIRE-615
>                 URL: http://jira.codehaus.org/browse/SUREFIRE-615
>             Project: Maven Surefire
>          Issue Type: Improvement
>          Components: JUnit 3.x support, Junit 4.x support, Maven Surefire Plugin, TestNG support
>    Affects Versions: 2.5
>            Reporter: Brett Porter
>            Assignee: Stephen Connolly
>             Fix For: 2.6
>
>
> currently, the Surefire plugin uses resolveTransitively to obtain the Surefire provider (junit, junit4, junit47, testng). Each of these has a compile time dependency on the library itself to interact with their API.
> This results in downloading older versions as well as the newer one requested by the project (TestNG 5.7, JUnit 4.0, JUnit 3.8.1). There are two possible solutions to this:
> - alter the resolveTranstively method to exclude the artifact that is already available from the project
> - set the dependency to 'provided' in the providers POM

-- 
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: (SUREFIRE-615) Surefire providers shouldn't need to download old versions of the library

Posted by "Stephen Connolly (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/SUREFIRE-615?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=231433#action_231433 ] 

Stephen Connolly commented on SUREFIRE-615:
-------------------------------------------

r983549 reverse merged r982995

> Surefire providers shouldn't need to download old versions of the library
> -------------------------------------------------------------------------
>
>                 Key: SUREFIRE-615
>                 URL: http://jira.codehaus.org/browse/SUREFIRE-615
>             Project: Maven Surefire
>          Issue Type: Improvement
>          Components: JUnit 3.x support, Junit 4.x support, Maven Surefire Plugin, TestNG support
>    Affects Versions: 2.5
>            Reporter: Brett Porter
>            Assignee: Stephen Connolly
>             Fix For: 2.6
>
>
> currently, the Surefire plugin uses resolveTransitively to obtain the Surefire provider (junit, junit4, junit47, testng). Each of these has a compile time dependency on the library itself to interact with their API.
> This results in downloading older versions as well as the newer one requested by the project (TestNG 5.7, JUnit 4.0, JUnit 3.8.1). There are two possible solutions to this:
> - alter the resolveTranstively method to exclude the artifact that is already available from the project
> - set the dependency to 'provided' in the providers POM

-- 
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: (SUREFIRE-615) Surefire providers shouldn't need to download old versions of the library

Posted by "Stephen Connolly (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/SUREFIRE-615?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Stephen Connolly closed SUREFIRE-615.
-------------------------------------

    Resolution: Fixed

r983577

> Surefire providers shouldn't need to download old versions of the library
> -------------------------------------------------------------------------
>
>                 Key: SUREFIRE-615
>                 URL: http://jira.codehaus.org/browse/SUREFIRE-615
>             Project: Maven Surefire
>          Issue Type: Improvement
>          Components: JUnit 3.x support, Junit 4.x support, Maven Surefire Plugin, TestNG support
>    Affects Versions: 2.5
>            Reporter: Brett Porter
>            Assignee: Stephen Connolly
>             Fix For: 2.6
>
>
> currently, the Surefire plugin uses resolveTransitively to obtain the Surefire provider (junit, junit4, junit47, testng). Each of these has a compile time dependency on the library itself to interact with their API.
> This results in downloading older versions as well as the newer one requested by the project (TestNG 5.7, JUnit 4.0, JUnit 3.8.1). There are two possible solutions to this:
> - alter the resolveTranstively method to exclude the artifact that is already available from the project
> - set the dependency to 'provided' in the providers POM

-- 
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: (SUREFIRE-615) Surefire providers shouldn't need to download old versions of the library

Posted by "John Casey (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/SUREFIRE-615?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=231094#action_231094 ] 

John Casey commented on SUREFIRE-615:
-------------------------------------

provided scope seems like the most elegant solution to me too

> Surefire providers shouldn't need to download old versions of the library
> -------------------------------------------------------------------------
>
>                 Key: SUREFIRE-615
>                 URL: http://jira.codehaus.org/browse/SUREFIRE-615
>             Project: Maven Surefire
>          Issue Type: Improvement
>          Components: JUnit 3.x support, Junit 4.x support, Maven Surefire Plugin, TestNG support
>    Affects Versions: 2.5
>            Reporter: Brett Porter
>             Fix For: 2.6
>
>
> currently, the Surefire plugin uses resolveTransitively to obtain the Surefire provider (junit, junit4, junit47, testng). Each of these has a compile time dependency on the library itself to interact with their API.
> This results in downloading older versions as well as the newer one requested by the project (TestNG 5.7, JUnit 4.0, JUnit 3.8.1). There are two possible solutions to this:
> - alter the resolveTranstively method to exclude the artifact that is already available from the project
> - set the dependency to 'provided' in the providers POM

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