项目类路径中缺少java ee api,而在maven中使用httpunit进行servlet测试

Jér*_*nge 2 java junit servlets maven http-unit

我想使用maven 运行这里提供的servlet测试示例.Javaee web api应声明为provided:

    <dependency>
        <groupId>javax</groupId>
        <artifactId>javaee-web-api</artifactId>
        <version>6.0</version>
        <scope>provided</scope>
    </dependency>

    <dependency>
        <groupId>httpunit</groupId>
        <artifactId>httpunit</artifactId>
        <version>1.7</version>
        <scope>test</scope>
    </dependency>
Run Code Online (Sandbox Code Playgroud)

但是,示例中的一个测试抛出ServletException.NetBeans抱怨说java ee api is missing on project classpath.如何解决这个问题?

编辑

它不是NetBeans问题,而是一个maven问题.

Jér*_*nge 9

现在这是我在Java时代遇到过的最令人虚弱的问题.接下来是我见过的最荒谬的解决方法:

<dependency>
    <groupId>httpunit</groupId>
    <artifactId>httpunit</artifactId>
    <version>1.7</version>
    <scope>test</scope>
</dependency>

<dependency>
    <groupId>javax</groupId>
    <artifactId>javaee-web-api</artifactId>
    <version>6.0</version>
    <scope>provided</scope>
</dependency>
Run Code Online (Sandbox Code Playgroud)

是的,置换中的依赖声明pom.xml(参见此处的"为什么")并使其成为javaee-web-api最后一个.