eclipse在导入一个Web项目后,配置好Tomcat发现项目打红叉,而WebContent和其他内容没有错误,但是右键run并没有run on Server。
错误如下:
将Problems(在Window-->show view-->General即可找到)调出来查看问题所在。发现报了如下错误:
解决方法:
右键项目-->Properties-->Targeted Runtimes,发现打勾的是Tomcat9,我们需要将其取消打勾,并将Apache Tomcat v9.0打勾。这是红叉就没有了。
这里是因为在导入这个项目时的Tomcat运行环境和我自己在Eclipse上的Tomcat包发生了冲突,需要更换为自己在eclipse上的Tomcat包。
但是还是没有解决右键run并没有run on Server的问题。我再次查找原因,终于发现了问题所在:我没有将我导入的chapter1项目加入到Tomcat Server 的 Source下,所以右键run并没有run on Server
下图是添加后的,添加后需要重启eclipse就可以了。
但是过了一会又是出现了同样的问题。
经过查找资料,最终解决方法就是该项目的 .settings
文件夹中的 org.eclipse.wst.common.project.facet.core.xml
可以看到它声明了tomcat运行的特定 runtime name
和 二次运行的jre
,先将其删除,然后直接新建一个Web项目,将其 org.eclipse.wst.common.project.facet.core.xml
copy到报错的项目即可。
第一张图是报错的项目的,第二张是可以跑起来的项目的。
结束!