it-swarm.cn

Eclipse - 如何将Tomcat 6中的“Project Facet”更改为Tomcat 5.5?

(Eclipse 3.4,Ganymede)

我在Eclipse中有一个现有的Dynamic Web Application项目。当我创建项目时,我在“配置”下拉列表中指定了“Apache Tomcat v6的默认配置”。

这是一个月或两个月,我现在想将配置更改为Tomcat'v5.5'。 (这将是生产服务器上的Tomcat版本。)

我尝试了以下步骤(没有成功):

  • 我在Project Properties下选择了Targeted Runtimes
    Tomcat v5.5选项已禁用,UI显示以下消息:
    If the runtime you want to select is not displayed or is disabled you may need to uninstall one or more of the currently installed project facets.
  • 然后我点击Uninstall Facets...链接。
    Runtimes选项卡下,仅显示Tomcat 6
    对于Dynamic Web Module,我选择了2.4版本代替2.5
    Runtimes标签下,现在显示Tomcat 5.5
    但是,UI现在显示以下消息:
    Cannot change version of project facet Dynamic Web Module to 2.4.
    Finish按钮被禁用 - 所以我达到了死胡同。

我可以使用Tomcat v5.5配置成功创建一个新项目。但出于某种原因,它不会让我降级“现有项目”。

作为解决方法,我创建了一个新项目并从旧项目中复制了源文件。尽管如此,解决方案相当痛苦,有点笨拙。

任何人都可以解释我如何将项目配置从'Tomcat 6''降级'到'Tomcat 5'?或者或许可以阐明为什么会发生这种情况?

谢谢
皮特

56
user13360

这是一种黑客攻击Eclipse,你可能会遇到麻烦,但这应该工作:

打开导航器视图,发现项目下有一个.settings文件夹展开它然后打开文件:org.Eclipse.wst.common.project.facet.core.xml你应该看到一行说明:<installed facet="jst.web" version="2.5"/>将其更改为2.4并保存。

只要确保你的项目没有使用任何特定的2.5,你应该是好的。

还要检查您的web.xml是否具有正确的配置:

<web-app version="2.4" 
        xmlns="http://Java.Sun.com/xml/ns/j2ee" 
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
        xsi:schemaLocation="http://Java.Sun.com/xml/ns/j2ee http://Java.Sun.com/xml/ns/j2ee/web-app_2_4.xsd">
87
William

这可能是旧的,但我尝试在Eclipse Galilio中找到以下内容。

打开导航器视图,发现项目下有一个.settings文件夹展开它,然后打开文件:org.Eclipse.wst.common.project.facet.core.Delete此文件的内容并右键单击该项目然后单击属性。转到弹出窗口中的Project Facats,您可以单击运行时选项卡并将项目转换为所需的新方面。

7
Venkat

如果您正在使用Maven,则关闭Eclipse,然后键入>mvn Eclipse:eclipse -Dwtpversion=2.0,然后重新启动Eclipse。

5
Karthik

您可以尝试取消选中构面,应用,更改构面的值并进行检查。它适用于Eclipse Helios SR1。

所以主要区别在于我使用'动态Web模块'。

我希望它对你也有用。

0
xgomez

我看到同样的事情,然后我改变了web.xml中的web-app版本值。这样做可以解决这个问题。

0
sarabrab

对不起,似乎我没有足够的Rep发表评论所以......

我认为Eclipse很难安全地降级到较低的标准,因为它无法真正知道你是否使用过更新的Web标准。因此,如果它只是允许您这样做,它可能会导致您的程序在旧版本上失败。

您始终可以向后兼容,但不能向前兼容。

0
William