简体   繁体   中英

Jetty Runner, Servlet Filter and org.apache.jasper.JasperException: PWC6345

I'm desperate. I have read all topics about this problem here and it doesn't help. I had written a simple app and tried to run it using Jetty Runner. It works well on my local machine. But after that I tried to add servlet filter (because Jetty has issues with servlets on welcome-file-list). Now it prints to me:

org.apache.jasper.JasperException: PWC6345: There is an error in invoking javac.  A full JDK (not just JRE) is required

My JDK and JAVA_HOME is OK . I'm using jdk1.8.0_25.

I read about:

<Call class="java.lang.System"  name="setProperty">
        <Arg>org.apache.jasper.compiler.disablejsr199</Arg>
        <Arg>true</Arg>
</Call>

or

-Dorg.apache.jasper.compiler.disablejsr199=true

I got this problem with it:

org.apache.jasper.JasperException: PWC6349: Cannot find a java compiler for compilation.  If running with JDK 5 or before, Ant or JDT compiler can be used, if the corresponding jars and bridge classes (org.apache.jasper.compiler.AntJavaCompiler or org.apache.jasper.compiler.JDTJavaCompiler) are included

I'm using IDEA, Maven and .sh-file to run Jetty.

java -jar target/dependency/jetty-runner.jar target/*.war

The strange thing is - I've tried to deploy this app with servlet filter on Heroku and it WORKS WELL .

Could you help me please with this problem?

将-Dorg.apache.jasper.compiler.disablejsr199设置为false,并确保在路径上添加了jdk,这意味着您的路径应类似于“ C:\\ Program Files \\ Java \\ jdk1.7.0_67 \\ bin”,而不是C:\\ Program文件\\的Java \\ JRE \\ bin中。

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM