2014-01-17 39 views
1

我的項目運行在Windows 7,jdk6和Apache tomcat7和eclipse juno上。Windows 8 + Jdk 6 + Apache Tomcat7

現在我必須將它移到windows8上。

在windows8中,我下載了用於64位窗口的jdk1.6.0_35,用於64位和月蝕luna的Apche-tomcat7。

但是當我運行這個項目,它會給我的JSP編譯錯誤,也給我下面的錯誤

org.apache.jasper.JasperException: Unable to compile class for JSP 
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:661) 
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:357) 
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390) 
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334) 
javax.servlet.http.HttpServlet.service(HttpServlet.java:728) 

根源

java.io.IOException: tmpFile.renameTo(classFile) failed 
org.apache.jasper.compiler.SmapUtil$SDEInstaller.install(SmapUtil.java:204) 
org.apache.jasper.compiler.SmapUtil.installSmap(SmapUtil.java:163) 
org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:483) 
org.apache.jasper.compiler.Compiler.compile(Compiler.java:378) 
org.apache.jasper.compiler.Compiler.compile(Compiler.java:353) 
org.apache.jasper.compiler.Compiler.compile(Compiler.java:340) 
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:646) 
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:357) 
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390) 
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334) 
javax.servlet.http.HttpServlet.service(HttpServlet.java:728) 

我應該怎麼做,以解決在windows8的這個錯誤?

+0

它將.jsp編譯爲一個類文件。我懷疑這個類文件是一個tmp文件,編譯器沒有權利將它重命名爲右側目錄中的.class文件。那麼在你運行的帳戶下,它是否有權寫入webapp的安裝目錄? – flup

+0

我用Admin登錄的用戶only.I已將此webapps移到windows7和windowsNT那裏,它也給出了相同的編譯錯誤... – user1506628

+0

您的jsp文件是否會拋出FileNotFoundException? https://issues.apache.org/bugzilla/show_bug.cgi?id=38713 – flup

回答

0

解決方案:禁用McAfee防病毒實時掃描。