Перенос приложения на основе Jetty 6 до 9.2 (встроенный).Jetty 9 (emedded) JSP-компиляция во время выполнения
Я не могу понять, как именно JSPs скомпилированы во время выполнения (без предварительной компиляции). Мое приложение работает нормально, когда я использую JDK. Но он не может служить JSP при запуске в JRE, то ошибка, я получаю:
org.apache.jasper.JasperException: PWC6345: There is an error in invoking javac. A full JDK (not just JRE) is required
at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:92)
at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:378)
at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:119)
at org.apache.jasper.compiler.Jsr199JavaCompiler.compile(Jsr199JavaCompiler.java:208)
at org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:384)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:453)
который ясно показывает, что Jetty ищет Java компилятор, который явно не присутствует в JRE. Глядя в Jetty 9.2 Документов я прочитал, что:
By default, the Apache JSP container will look for the Eclipse Java Compiler (jdt).
У меня есть пристань-Jdt-JSP-2.3.3.jar в пути к классам, но по какой-то причине, Jetty, кажется, игнорировать его.
Итак, мой вопрос: как настроить встроенный Jetty без предварительного компиляции JSP и возможности запуска в JRE. Это, по сути, то, что мое приложение в Jetty 6 делало с помощью встроенного компилятора jasper. Возможно ли это с Jetty 9.2?
Проект github, демонстрирующий Jetty 9, встроенный в JSP (поддерживается проектом Jetty) -> https://github.com/jetty-project/embedded-jetty-jsp –