转自: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了。