如何复制eclipse动态Web项目?

Joh*_*ohn 7 eclipse

我有一个带有动态Web项目的工作区.当我尝试将项目复制并粘贴到同一工作区时,eclipse会询问新项目的名称,然后复制文件.

我遇到的问题是,当我将此项目部署到服务器时,它将使用原始名称而不是新名称进行部署.

看起来eclipse在复制时不会更新所有旧名称引用.

如何制作现有项目的干净副本?

Joh*_*ohn 9

经过一些搜索后,我在eclipse bug网站上找到了这个.

重现步骤:

  1. 创建一个动态Web项目并将其命名为"Project1"
  2. 复制并粘贴此项目,以创建另一个是第一个的克隆; 在"粘贴"对话框中,指定"Project2"作为目标项目的名称(而不是"Project of Project1")

观察到的行为:

目标项目的上下文根与源项目相同.这可能是一个问题,但可以在项目设置和/或服务器编辑器(模块选项卡)中轻松更新.但是,即使模块名称相同,它通常也等于项目名称.因此,在Project2/.settings/org.eclipse.wst.common.component中,我发现以下内容:

这会在将模块部署到服务器时导致问题.而且,模块名称无法通过GUI从任何地方轻松更改.

预期行为:

复制和粘贴操作应将Web模块名称更新为"Project2",就像重命名项目时一样.

解决方法:

确保尚未将与目标项目对应的模块添加到服务器.然后,手动编辑Project2/.settings/org.eclipse.wst.common.component并更改wb-module元素的deploy-name属性值.关闭并重启Eclipse(!!!),将获取新名称.如果你不重新启动Eclipse,即使你从Eclipse中编辑org.eclipse.wst.common.component,WTP也不会进行更改(它似乎是在内存中缓存它......).