Target runtime Apache Tomcat v6.0 is not defined.错误解决方法

本文转自:http://blog.csdn.net/xw13106209/article/details/5910358

Eclipse导入工程后工程上显示一个小红叉,但工程里没有文件错误,也没有语法错误,百思不得其解啊,后来在网上找了一些资料说是项目引用的类库路径有问题。【项目】->【右键】->【build path】->【configure build path】->【libraries】,查看一下引用的类库路径。网上都说是因为这里引用错误引起的,但是我在项目导入的时候做的第一件事情就是修改这里的library,因此不是这个原因。

在problems中显示错误是:Target runtime Apache Tomcat 6.0 is not defined. 在网上查了一下终于找到解决方法。方法是:在工程目录下的.settings文件夹里,打开org.eclipse.wst.common.project.facet.core.xml文件,其内容是:

<?xmlversion="1.0"encoding="UTF-8"?> 
<faceted-project> 
<runtimename="Apache Tomcat v6.0"/> 
<fixedfacet="jst.web"/> 
<fixedfacet="jst.java"/> 
<installedfacet="jst.java"version="6.0"/> 
<installedfacet="jst.web"version="2.5"/> 
<installedfacet="wst.jsdt.web"version="1.0"/> 
</faceted-project>

将其修改为:

<?xml version="1.0" encoding="UTF-8" ?> 
<faceted-project>
</faceted-project>

PS:进行上面的修改以后虽然没有错误了,但是想发布网站demo的时候发现没有【run as】->【run on server】这个选项了。这时候我们创建一个demo2的web project,然后查看.settings下的org.eclipse.wst.common.project.facet.core.xml,我们发现其内容是:

<?xml version="1.0" encoding="UTF-8" ?> 
 <faceted-project>
  <runtime name="Apache Tomcat v6.0.29" /> 
  <fixed facet="jst.web" /> 
  <fixed facet="java" /> 
  <fixed facet="wst.jsdt.web" /> 
  <installed facet="java" version="1.6" /> 
  <installed facet="jst.web" version="2.5" /> 
  <installed facet="wst.jsdt.web" version="1.0" /> 
  </faceted-project>

那么我们只需要将该代码拷贝到网站demo下的.settings目录下,将原来的org.eclipse.wst.common.project.facet.core.xml覆盖即可。覆盖以后我们在Eclipse就能够使用【run as】->【run on server】来发布demo了。

原文地址:https://www.cnblogs.com/yadongliang/p/7878930.html