Java 作为JUnit运行-ClassNotFoundException-BuildCommand修复导致类解析问题

Java 作为JUnit运行-ClassNotFoundException-BuildCommand修复导致类解析问题,java,eclipse,junit,Java,Eclipse,Junit,以下是我的设置: 食氧 使用Maven 3.3构建和部署,其中包括单元测试的这些特定依赖项: JUnit4.4 Mockito 1.9.5 我创建了一个JUnit测试类并将其添加到($project/src/test/java)。 我将此文件夹添加为源文件夹,然后作为JUnit运行 我收到以下错误: Class not found java.lang.ClassNotFoundException: at java.net.URLClassLoader.findClass(Unkn

以下是我的设置:

食氧

使用Maven 3.3构建和部署,其中包括单元测试的这些特定依赖项:

  • JUnit4.4
  • Mockito 1.9.5
我创建了一个JUnit测试类并将其添加到($project/src/test/java)。
我将此文件夹添加为源文件夹,然后作为JUnit运行

我收到以下错误:

Class not found 
java.lang.ClassNotFoundException: 
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.loadClass(RemoteTestRunner.java:770)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.loadClasses(RemoteTestRunner.java:499)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:522)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:760)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:460)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:206)
我可以通过将以下内容添加到.project文件生成规范来修复此问题:

   <buildCommand>
        <name>org.eclipse.jdt.core.javabuilder</name>
        <arguments>
        </arguments>
    </buildCommand>

org.eclipse.jdt.core.javabuilder
不幸的是,这似乎会导致多个错误出现在Java服务器面标记下,等等


这真的是我的问题还是我可能错过了什么?在进行此更改以修复“Junit”问题之前,如果您有一个干净的工作区,这尤其令人沮丧

这些额外的依赖项需要添加到pom.xml中

<!-- JSF(MyFaces & Tomahawk) Dependencies -->
        <dependency>
            <groupId>org.apache.myfaces.core</groupId>
            <artifactId>myfaces-api</artifactId>
            <version>1.1.5</version>
            <exclusions>
                <exclusion>
                    <artifactId>javax.servlet</artifactId>
                    <groupId>jstl</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.apache.myfaces.core</groupId>
            <artifactId>myfaces-impl</artifactId>
            <version>1.1.5</version>
            <exclusions>
                <exclusion>
                    <artifactId>javax.servlet</artifactId>
                    <groupId>jstl</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.apache.myfaces.tomahawk</groupId>
            <artifactId>tomahawk</artifactId>
            <version>1.1.6</version>
            <exclusions>
                <exclusion>
                    <artifactId>javax.servlet</artifactId>
                    <groupId>jstl</groupId>
                </exclusion>
            </exclusions>
        </dependency> 

org.apache.myfaces.core
MyFacesAPI
1.1.5
javax.servlet
jstl
org.apache.myfaces.core
MyFacesImpl
1.1.5
javax.servlet
jstl
org.apache.myfaces.tomahawk
战斧
1.1.6
javax.servlet
jstl
实际的jar文件也可以作为外部库添加,但这需要在每次创建项目时完成