Eclipse多次导入相同的项目

注:Eclipse导入项目,不管是否是多次导入相同的项目,请坚持坚持一个workspace对应一个项目原则,如果是ssm项目,则最好一个workspace对应一个项目于对应一个tomcat。(由于项目端口号是在server.xml里配的,相同的项目不对应一个tomcat一般没事,特殊时候可能有问题哈)。导入前,在电脑磁盘创建一个workspace文件夹,然后在eclipse界面先切换到该workspace,步骤:File>Switch Workspace>Other>Browse选择该workspace文件夹>Launch即可。参考下图:

切换到该workspace后可通过两种方式导入项目:远程和本地(这里演示git和本地导入)。

git地址方式导入步骤:File>Import>Git>Projects from Git>Next>Clone URL>Next>将git地址贴入URL栏>Next>Deselect All之后再单独勾选此项目>Next>再Next>Directory栏有的人选择默认(本人选择workspace目录)>Next>再Next>Finish即可。

 

本地导入方式步骤:不管是否maven项目,本地都可以直接File>Import>General>Existing Projects Into...>next>Browser选择项目文件夹>勾选Copy projects into workspace>Finish即可。一个workspace对应一个项目,不管是否是同一个项目,都不会产生下方的问题(它是由于在一个workspace里重复导入相同的项目引起的)。

不管是否maven项目,本地都可以直接File>Import>General>Existing Projects Into...>next>Browser选择项目文件夹>勾选Copy projects into workspace>Finish。如图:

多次导入同一个项目(同一个项目,同一个workspace,但项目所在文件夹不同),用于进行测试,原项目要继续保留,作为备份

但当我们导入在Eclipse项目管理器中已经存在的项目时,Eclipse总是会提示我们Some project cannot be imported because they already exist in the workspace,如图:

解决办法:在eclipse这里将原先的项目随便改个名即可。例如,右键项目>Refactor>Rename,改为"ssm666"。然后再次导入。

当然,Tomcat启动项目时可能会报错,如下:

java.lang.IllegalStateException: Web app root system property already set to different value: 'webapp.root' = [D:\eclipse-workspace1\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\ssm555\] instead of [D:\eclipse-workspace1\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\ssm666\] - Choose unique values for the 'webAppRootKey' context-param in your web.xml files!

解析与解决:

部署在同一容器中的Web项目,web.xml要配置param-name为webAppRootKey且param-value不同的<context-param>,如果该项目不配置,则默认有一个:

<context-param>
<param-name>webAppRootKey</param-name>
<param-value>webapp.root</param-value>
</context-param>

因为这两个项目是相同的,而且都没配置,所以都有上面这个默认配置,第一个项目只要启动过一次之后,webapp.root在该Tomcat中就已被设置,当再次用该Tomcat中启动第二个项目时,webapp.root这个value再次被尝试设置,于是报了这个错。

web.xml添加如下配置即可。如果项目中已配有webAppRootKey,则修改param-value保证同一个Tomcat中该param-value是唯一的即可:

<!-- dev_gx_1 这名字可以随便取,和tomcat中其他项目的值不一样即可-->

<context-param
    <param-name>webAppRootKey</param-name> 
    <param-value>dev_gx_1.root</param-value> 
</context-param>

  • 6
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值