首页 > 代码库 > Eclipse中的Web项目自己主动部署到Tomcat以及怎样在Eclipse中使用My Eclipseproject

Eclipse中的Web项目自己主动部署到Tomcat以及怎样在Eclipse中使用My Eclipseproject

我是一个新手学习Java,servlet和Jsp.

痛苦的是我时候一个.net程序猿,习惯了微软的VS IDE一切都是封装好的.傻瓜式的使用, 不须要关心内部实现.

悲催的是我看到资料都是My Eclipse, 但我下载使用的环境是Eclipse.这就有两个问题要解决.

一个是怎样把My Eclipse的东西同步到Eclipse上,

另外一个是版本号控制问题.我的环境我认为比較奇葩(Tomca6.0.45+J2ee1.8.25).

在这个过程中遇到的问题较多,以下就找一个先突破吧.

 

怎样部署Servlet到Tomcat,也能够说是怎样debug on server(源码在tomcat文件夹下)

 

对于一个新手来说,怎样高速定位自己遇到的问题笔记重要,一个办法是把你看到的问题直接google|baidu.还有一个办法是查看出错信息”猜”是哪里可能出了问题.

当你用Eclipse执行web项目的时候。你就会看到控制台出现:
WARNING:[SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property‘source‘ to ‘org.eclipse.jst.jee.server:myProject‘ did not find a matchingproperty.
这种字样。说的是server.xml的Service标签里的Engine标签里的Host标签里的Context标签配置了一个‘source‘属性,属性值是‘org.eclipse.jst.jee.server:myProject‘.
但问题是Context标签是不支持source这个属性的,所以跳出了警告。所以大家也发现的是。虽然有警告,可是大部分人的程序是依旧可以执行没有问题的,但少部分人的不可以执行。


或许你已经在网上查到非常多像这种问题,并且也给出了解决办法,可是你照着解决办法去做了,警告依旧存在!
那如今你就能够跟着我的步骤来做了:

 

解决方法1:

  1. 双击Servers里的Tomcat v6.0 at localhost, 然后跳出个界面;技术分享;
  2. 在Server Options选项里有个Publish module contexts to separate XML files的选项。到这里我们也一样把勾勾上假设问题解决,请跳过. 假设问题仍在,请继续看.
  3. 请大家注意Server Locations, 在Eclipse默认情况是选在第一个”Useworkspace metadata(does not modify Tomcat installation)” . Deploy path= wtpwebapps.并且Eclipse默认会把Web项目放到Eclipse的工作空间(work bench)下的.metadata\.plugins\org.eclipse.wst.server.core\tmp0(或者是tmp1)\wtpwebapps\下,假设如今Eclipse中有名为myProject‘的项目,将它按曾经的方式部署到服务器上,则会在上边的文件夹下,看到自己的项目了.技术分享

 改动完毕之后。保存就可以。这样以后的项目都会公布到tomcat下的webapps下了。


注意:

  1. 在Eclipse中,用这样的方式公布Web项目,会将原先server的conf目录被分成为backup目录,自己新建立一个目录。来作为配置Eclipse公布的Web项目。所以还是要使用MyEclipse编写JavaWeb项目
  2. 有时候。Server Locations项目下,什么都不可选择,你能够先删除server,又一次加入tomcatserver,然后右击打开,改动就可以。

 

这个时候仅仅是攻克了第一个问题, 公布servlet 到tomcatserver. 那么你若是导入的My Eclipse文件将不能非常好的工作,至少有一部分不能公布过去.由于Eclipse默认的web文件夹是WebContend,而MyEclipse是WebRoot.所以导致仅仅有WebContent中的内容被公布到Tomcat中.怎样改动它?

请看下图

 技术分享

1. 找到project的.settings 文件

技术分享

2. 改动为你想公布的文件夹

技术分享

Eclipse中的Web项目自己主动部署到Tomcat以及怎样在Eclipse中使用My Eclipseproject