2010-06-28 10 views
18

Czy ktoś może jasno opisać, w jaki sposób JRE obsługuje pliki JSP zawierające czyste kody JAVA? Wiem, że kody bajtów plików JSP nie są umieszczane w pliku WAR. Składa się z skompilowanych plików CLASS i zwykłych plików JSP.Jak JRE może wystarczyć Tomcatowi do obsługi plików JSP? Dlaczego nie JDK?

Jest to napisane w Tomcat's RUNNING.txt "Serwer Apache Tomcat 6.0 wymaga środowiska Java 2 Standard Edition Runtime Environment (JRE) w wersji 5.0 lub nowszej."

Proszę zabić mój ból.

Odpowiedz

25

Tomcat łączy kopię kompilatora Eclipse, zamiast używać kompilatora javac JDK. Jest szybszy (lub przynajmniej kiedyś), ma mniej restrykcyjne licencjonowanie i usuwa zależność od pełnego JDK.

http://tomcat.apache.org/tomcat-5.5-doc/jasper-howto.html

kompilatora JDT Eclipse Java jest teraz wykorzystywane do wykonywania JSP kod źródłowy Java kompilację

To sugeruje, że przed Tomcat 5.5, pełna JDK jest wymagane.

+0

Gdzie to jest? Czy jest to plik 'ecj * .jar' w katalogu' lib'? – Pacerier

-5

Tomcat to kontener WWW, który uruchamia JSP i serwlety. Tomcat implementuje Sun Specyfikacja serwletu i JSP. Tomcat może uruchomić skompilowane pliki klas Java. Aby osiągnąć ten cel, wystarczy JRE, nic więcej.

Czy wiesz? JSP będzie również przekształcany w kod serwletów ...

Tomcat zawiera od serwletów i JSP silników wykonania zwanych Catalina (jako kontener serwletów) i Jasper (służy jako pojemnik JP), który przekształca kod JSP do kodu serwletu i przekazuje go do kontenera Catalina.

+6

Żadne z nich nie odpowiada na pytanie. Pliki JSP są kompilowane do źródła '.java', które następnie musi być dalej kompilowane do plików' .class'. JRE nie może tego zrobić, co stanowiło sedno problemu. – skaffman