8

在 java 课程中,每个人(或至少大多数人)似乎都有一个有效的日食。他们似乎总是有一个工作的 faces-config(一个可视化的),并在 xhtml 文件中自动完成(对于 facelets)。尽管为了自动完成,我们在 JSP 上添加了 *.xhtml 文件。

看来这是我对 eclipse 不太了解的部分,而且我不知道为什么,这很烦人。当我导入一个项目(Maven 或现有项目)时,它总是没有方面,只有 java(在 1.5 中甚至没有 1.6),而它应该是一个 web 项目并且有 facelets 和动态 web 项目。

我可以改变这些方面吗?当我将 java 设置为 1.6 时,它似乎可以正常工作,但尝试将动态 Web 模块版本从 2.4 编辑到 2.5(它是 2.4 的标准)而不会遇到一些麻烦。即使在我刚刚制作了一个新的 maven 项目(在命令行中使用了 archtype)之后,我也无法对这些方面进行太多更改。

我究竟做错了什么?

4

4 回答 4

10

Eclipse 功能由项目元数据驱动。如果您没有正确的元数据,项目将无法正常运行。

如果您从头开始并在 Eclipse 中创建项目,请确保将所有元数据文件放在源代码控制系统中(包括 [project]/.settings 目录下的所有内容)。

如果您使用 Maven 生成 Eclipse 项目元数据,请确保您找到了解 WTP 的 Maven 插件。我没有参考,但我知道它存在。这将确保当 Maven 生成元数据时,它将具有 Web 项目的正确元数据。

我可以改变这些方面吗?当我将 java 设置为 1.6 时,它似乎可以正常工作,但尝试将动态 Web 模块版本从 2.4 编辑到 2.5(它是 2.4 的标准)而不会遇到一些麻烦。

facet 的工作方式是 facet 作者可以选择不实现版本更改逻辑。不幸的是,Java EE 模块方面(例如动态 Web 模块)没有实现版本更改。Java 等其他方面确实支持这一点。因此,您的体验会因方面而异。

如果一切都失败了,您可以手动编辑 .settings/org.eclipse.wst.common.project.facet.core.xml 文件。确保从 Eclipse 中执行此操作,否则之后您将需要刷新项目。请记住,如果您要强制进行此类更改,则可能需要对项目内容进行一些手动修复。例如,如果您更改 Web 规范级别,您可能需要更新部署描述符。

于 2011-01-26T22:01:18.623 回答
5

您可以更改项目方面。您应该关闭 eclipse ,然后转到 .settings 目录, org.eclipse.wst.common.project.facet.core.xml 文件包含所有方面相关信息。您可以添加或删除项目方面。

于 2011-01-26T21:48:20.107 回答
4

日食

Right click on the project 并properties从出现的菜单中选择

打开窗口的左侧有一个列表。选择project facets,您将看到所有可用的方面,您可以选择并调整其设置。

于 2011-01-26T22:46:10.780 回答
1

我最近将一个旧项目升级到 Java8/Eclipse 4.6.1,也遇到了一个方面的版本问题。为了获得@fmucar 提到的菜单(在我安装的Eclipse for RCP 和 RAP Developers软件包中不可用),我必须从Help Menu安装新软件,然后选择添加Faceted Project Framework。然后我可以从 IDE 中选择 facet 版本。

于 2016-10-26T22:18:06.593 回答