今天,碰到一个要命的问题:
简单说:MyEclipse下新建Web项目A,而后重构改名为B,运行tomcat服务器,在浏览器地址栏输入:http://localhost/B/login.html,报404错误,即无该页面。将login.html文件放到其它Web项目下,能正常访问。一下子没找出原因。
后来发现是tomcat目录下webapps下的web项目依旧为A,删了A,再开启MyEclipse的Web项目,发现还是生成A,说明Web项目名修改不成功,查资料得知:
重构名字,发布后依旧为老名字,需要进行一些设置,才能达到真正目的。这样,若我们在访问页面时,若在一个项目下不能访问,而在另一个项目能正常访问,那么查看下是否出现我这样的问题。
提供两种解决方案:
解决方式一:
打开工程所在目录,找到一个 .mymetadata的文件,用写字板打开,内容大致如下,old为老名字,new为修改后的新名字:
<?xml version="1.0" encoding="UTF-8"?> <project-module type="WEB" name="action" id="myeclipse.1242011546906" context-root="/old" j2ee-spec="1.4" archive="old.war"> <attributes> <attribute name="webrootdir" value="/WebRoot" /> </attributes> </project-module>
context-root="/old" 为发布后的目录名,改为 context-root="/new" 之后,用eclipse重新发布的目录名就是new了。如果用war的打包方式发布,则将 archive="old.war"> 改为 archive="new.war">。
解决方式二:
该方法更简单:右键点击你的项目,然后选择属性---->然后点击myeclipse-->web选项,修改web context-root名称为你要修改的项目名称和前面重命名的名称一致就可以了。