[ 
http://jira.codehaus.org/browse/SUREFIRE-288?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_98135
 ] 

Karl Wettin commented on SUREFIRE-288:
--------------------------------------

I just hit this.

Could not find anything about it, so I just excluded all inner classes:

{code:xml} 
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <configuration>
                    <excludes>
                        <exclude>**/*$*</exclude>
                    </excludes>                         
                </configuration>
            </plugin>
{code}  

I know this is not the forum, but as you notice I'm already at it: it would be 
nice if I could configure Surefire to what combinations of test scemes (ng, 
junit, pojo) to run. I need to exclude a lot of pojos now..

> Surefire tries to instantiate nested TestCase classes
> -----------------------------------------------------
>
>                 Key: SUREFIRE-288
>                 URL: http://jira.codehaus.org/browse/SUREFIRE-288
>             Project: Maven Surefire
>          Issue Type: Bug
>          Components: JUnit 3.x support, Junit 4.x support
>    Affects Versions: 2.0 (2.2 plugin)
>         Environment: Windows XP, Java 1.4.2
>            Reporter: Stephen Coy
>             Fix For: 2.4
>
>
> If a JUnit TestCase contains any kind of nested class (static or not), 
> Surefire feels obliged to try and instantiate it. This will fail with access 
> violations if the class is not public.
> Work around seems to be to make the nested class public, but surely Surefire 
> has no business doing this anyway?
> Here is a sample stack trace:
> org.apache.maven.surefire.booter.SurefireExecutionException: Unable to 
> instantiate POJO 'class 
> au.com.optus.eFulfilment.sap.test.moduleTest.TestSapOrderComponent$MySapOrderComponent';
>  nested exception is java.lang.InstantiationException: 
> au.com.optus.eFulfilment.sap.test.moduleTest.TestSapOrderComponent$MySapOrderComponent;
>  nested exception is 
> org.apache.maven.surefire.testset.TestSetFailedException: Unable to 
> instantiate POJO 'class 
> au.com.optus.eFulfilment.sap.test.moduleTest.TestSapOrderComponent$MySapOrderComponent';
>  nested exception is java.lang.InstantiationException: 
> au.com.optus.eFulfilment.sap.test.moduleTest.TestSapOrderComponent$MySapOrderComponent
> org.apache.maven.surefire.testset.TestSetFailedException: Unable to 
> instantiate POJO 'class 
> au.com.optus.eFulfilment.sap.test.moduleTest.TestSapOrderComponent$MySapOrderComponent';
>  nested exception is java.lang.InstantiationException: 
> au.com.optus.eFulfilment.sap.test.moduleTest.TestSapOrderComponent$MySapOrderComponent
> java.lang.InstantiationException: 
> au.com.optus.eFulfilment.sap.test.moduleTest.TestSapOrderComponent$MySapOrderComponent
>         at java.lang.Class.newInstance0(Class.java:293)
>         at java.lang.Class.newInstance(Class.java:261)
>         at 
> org.apache.maven.surefire.testset.PojoTestSet.<init>(PojoTestSet.java:52)
>         at 
> org.apache.maven.surefire.junit.JUnitDirectoryTestSuite.createTestSet(JUnitDirectoryTestSuite.java:61)
>         at 
> org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.locateTestSets(AbstractDirectoryTestSuite.java:93)
>         at 
> org.apache.maven.surefire.Surefire.createSuiteFromDefinition(Surefire.java:147)
>         at org.apache.maven.surefire.Surefire.run(Surefire.java:108)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:324)
>         at 
> org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:225)
>         at 
> org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:747)

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

        

Reply via email to