在tomcat服务器上编译.java文件

时间:2014-05-06 08:57:45

标签: java tomcat

是否有可能在tomcat服务器中编译.java文件。我研究了网但无法找到所需答案,如果是,那么请详细说明!!

PS:我是开发新手......如果这是一个愚蠢的问题,请道歉:)

3 个答案:

答案 0 :(得分:0)

不,不可能。 Tomcat是一个应用程序服务器。 要编译.java文件,您必须使用jdk中的工具。

答案 1 :(得分:0)

通过JDK和javac(java编译器)命令执行java类的编译。 编译代码您需要使用命令行或IDE,然后可以在AS中部署它(例如tomcat)

*只有在AS

中自动编译的jsp文件

答案 2 :(得分:0)

不可能

Tomcat期望.class编译的java文件。但是你仍然可以编译java文件来生成.class文件并替换tomcat中的on under classes文件夹并重新部署它。

来自Does Tomcat automatically compile java servlets?

Tomcat无法使用源文件(* .java)。你必须用javac编译你的应用程序,并创建一个名为WAR的文件 - web archive - 一个zip文件,它将包含你编译的类并遵守一些tomcat理解的EE标准(它也可以使用文件夹而不是zip,但是让我们把它放进去除此之外,它与此解释无关。)

其中此战争(一旦编译正确)将包含您的编译器servlet类HelloWorld.class)。

启动tomcat并在部署文件夹中识别出war文件后,它会打开它并在运行时加载。没有编译,只有运行时加载。

现在人们在这里谈论JSP。事实上,JSP在技术上等同于servlet,但类似于HTML。您将文件扩展名为.jsp并构建您的WAR。 java编译器无法读取jsp文件,因此你应该以某种方式将它们放入war文件中(通常构建工具/ IDE为你做)。你可以在战争中创建jsp文件的底线。现在你把你的战争放到Tomcat中,它像以前一样识别它并加载。此时它仍然对JSP没有任何作用。

所以,你的战争已经部署,tomcat已启动,在浏览器中你会转到'/myfirstjsp.jsp'此时(你的jsp的第一次调用)发生了很多事情:

Tomcat gets your browser's http request
Tomcat recognizes that it should process jsp file
Tomcat parses your JSP file
Tomcat compiles it internally to some class file that you're not aware of (its stored internally in Tomcat),
Tomcat loads this file in runtime and treats as a compiled Java class.

下次你将调用jsp时,它将被编译。