2012-03-03 5 views
1

Мое приложение отлично работает на dev-сервере, но когда я загружаю его, он не запускается, и я получаю следующее исключение в журналах: java.lang.NoClassDefFoundError: org/apache/jasper/runtime/JspSourceDependent. До сих пор, кажется, связано с зависимостями Jsp, объявленным в моем приложении, которые являются:NoClassDefFoundError: JspSourceDependent для App Engine

<dependency> 
     <groupId>javax.servlet</groupId> 
     <artifactId>servlet-api</artifactId> 
     <version>2.5</version> 
     <scope>provided</scope> 
    </dependency> 
    <dependency> 
     <groupId>javax.servlet.jsp</groupId> 
     <artifactId>jsp-api</artifactId> 
     <version>2.1</version> 
     <scope>provided</scope> 
    </dependency> 
    <dependency> 
     <groupId>javax.servlet</groupId> 
     <artifactId>jstl</artifactId> 
     <version>1.2</version> 
     <scope>provided</scope> 
    </dependency> 
    <dependency> 
     <groupId>javax.el</groupId> 
     <artifactId>el-api</artifactId> 
     <version>2.2</version> 
     <scope>provided</scope> 
    </dependency> 

я пропускаю что-то очевидное здесь, и почему приложение отлично работает в среде DEV, но не в состоянии запустить в производственная среда?

+0

Есть ли трассировка стека? Это не так много. –

ответ

1

Исключение было связано с предварительной компиляцией JSP с использованием jspc-maven-plugin, который оставил код, специфичный для tomcat, в предварительно скомпилированных классах. Решение состояло в том, чтобы удалить плагин из pom и позволить appcfg выполнить предварительную компиляцию перед загрузкой.

0

Думаю, вам нужно переключиться на Jetty для вашего сервера dev.

+0

Я не знаю, проголосовал за это, но это было очень полезно. При развертывании на Jetty у меня появилось другое исключение, которое, в конце концов, привело меня к решению. – Anvar

Смежные вопросы