Eclipse编译并运行java web项目的原理??

chongan_wang 2011-03-23 12:15:02
我们知道,如果手动部署一个web项目到tomcat的话,需要我们自己将war包扔到tomcat下面去运行,那么一般的项目在编译后webapps里面都会有我们的项目文件。

但是,使用了ECLIPSE(注意,不是MyEclipse)进行启动tomcat部署项目时,部署成功后,找到Eclipse里使用的tomcat目录(这个tomcat是自己指定的,不是Eclipse自带的)里找webapps时,发现并没有我们的项目的踪影,但是打开访问的链接,项目可以正常访问。

我想知道,Eclipse没有自动把项目编译放到tomcat中,那么又是如何使用tomcat来部署并正常发布这个项目的? 那么个发布后的文件都放去哪里了?我找了 /WEB-INF/classes 目录,也只有.class文件,那么我们的JSP呢?而且这些个文件都不在tomcat中,他们是如何运行起来的???

渴望求得真相!!!!把原理说一下 谢谢!
...全文
2149 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
tiao618 2011-03-24
  • 打赏
  • 举报
回复
jsp经过parse转换为xxxx.java的serverlet,xxxx.java的serverlet再经过compile称为xxxx_jsp.class,放在\.metadata\.plugins\org.eclipse.wst.server.core\tmpX\work\Catalina\localhost下

src下的*.java经过eclipse编译为*.class放在\.metadata\.plugins\org.eclipse.wst.server.core\tmpX\wtpwebapps\{ProjectName}\WEB-INF\classes下,

如果你的工程有引用其它工程,会将该工程打jar包放在\.metadata\.plugins\org.eclipse.wst.server.core\tmpX\wtpwebapps\{ProjectName}\WEB-INF\lib下,该路径下还有你的web工程引用的外部jar包

ps:只是一家之言,lz可以自己测试一下,在服务器启动之后,将某个要被使用的xxx.class文件移走,看看会否报错.....
chongan_wang 2011-03-23
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 tiao618 的回复:]

eclipse工程,在你的项目路径下有个\.metadata\.plugins\org.eclipse.wst.server.core\tmpX
它会把你的web工程部署在这个路径下,会调用tomacat下的jsp编译解析工具,将jsp编译为class文件,在服务器启动后,jre直接运行这些class文件
[/Quote]

您说的那个目录我知道,是Eclipse的缓存文件位置,我看了里面只有WebRoot下面的JSP内容。那src下的java文件编译后放哪了?
tiao618 2011-03-23
  • 打赏
  • 举报
回复
eclipse工程,在你的项目路径下有个\.metadata\.plugins\org.eclipse.wst.server.core\tmpX
它会把你的web工程部署在这个路径下,会调用tomacat下的jsp编译解析工具,将jsp编译为class文件,在服务器启动后,jre直接运行这些class文件
Horrison 2011-03-23
  • 打赏
  • 举报
回复
eclipse把你的工程部署到了自己的目录下,可以自己指定,不是tomcat默认的目录
soli11722984 2011-03-23
  • 打赏
  • 举报
回复
[Quote=引用楼主 chongan_wang 的回复:]
我们知道,如果手动部署一个web项目到tomcat的话,需要我们自己将war包扔到tomcat下面去运行,那么一般的项目在编译后webapps里面都会有我们的项目文件。

但是,使用了ECLIPSE(注意,不是MyEclipse)进行启动tomcat部署项目时,部署成功后,找到Eclipse里使用的tomcat目录(这个tomcat是自己指定的,不是Eclipse自带的)里找webapps时,……
[/Quote]

即使编译运行呗,就是内存里面运行

如果你想发布,可以打包成WAR,也可以一个个CLASS和JSP等文件复制粘贴过去
XiangZhiLiu 2011-03-23
  • 打赏
  • 举报
回复
eclipse不是有个jdk么~~配好了就可以将像tomcat之类的容器插在eclipse中~~然后点击启动tomcat或者部署都是调用的tomacat的相关文件~~

58,451

社区成员

发帖
与我相关
我的任务
社区描述
Java Eclipse
社区管理员
  • Eclipse
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧