2012-03-03 110 views
1

我的應用程序在dev服務器上工作正常,但是當我上傳它時無法啓動,並且在日誌中出現以下異常:java.lang.NoClassDefFoundError: org/apache/jasper/runtime/JspSourceDependent。到目前爲止,這似乎與我的應用程序中聲明的JSP依賴它們是:NoClassDefFoundError:JspSource依賴於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> 

我缺少明顯的東西在這裏,爲什麼不應用做工精細的開發環境,但未能在啓動生產環境?

+0

是否有堆棧跟蹤?這沒什麼可繼續下去的。 – 2012-03-05 05:17:58

回答

1

這個例外是由於使用jspc-maven-plugin在預編譯的類中留下了tomcat特定的代碼來預編譯JSP。解決方案是從pom中刪除插件,並讓appcfg在上傳前進行預編譯。

0

我認爲你需要切換到你的開發服務器的Jetty。

+0

我不知道是否投了票,但它非常有用。在部署到Jetty時,我得到了一個不同的異常,最終導致我找到了解決方案。 – Anvar 2012-03-05 08:19:39