告诉grails maven插件使用servlet 2.5而不是3.0

时间:2014-09-25 21:00:12

标签: java spring maven servlets grails

我可能有一个愚蠢且非常明显的问题:

我基本上有一个grails 2.3.8项目,使用maven 3.2构建,使用grails maven插件2.4.3

       <plugin>
            <groupId>org.grails</groupId>
            <artifactId>grails-maven-plugin</artifactId>
            <version>2.4.3</version>
            <configuration>
                <!-- Whether for Fork a JVM to run Grails commands -->
                <fork>true</fork>
                <grailsVersion>${grails.version}</grailsVersion>
            </configuration>
            <extensions>true</extensions>

        </plugin>

当我做

mvn clean install

我一直收到以下异常:

java.lang.NoClassDefFoundError: javax/servlet/AsyncContext
   at java.lang.Class.privateGetDeclaredMethods(Class.java:2484)
   at java.lang.Class.getDeclaredMethods(Class.java:1827)
   at org.codehaus.groovy.util.LazyReference.getLocked(LazyReference.java:46)

我的BuildConfig指定要使用的grails,servlet 2.5

grails.servlet.version =“2.5”

我的所有测试都运行正常,如果我直接使用grails运行它们:

grails test-app:integration

但如果我从命令行运行它们,则会因给定的异常而失败

mvn clean install

我的依赖关系报告列出了正确的servlet版本:

javax.servlet:servlet-api:jar:2.5:provided

任何人都知道如何解决这个问题?

感谢

0 个答案:

没有答案