Eclipse Faces配置编辑器无法正常工作

时间:2012-04-03 12:10:41

标签: eclipse maven jsf-2 m2e faces-config

摘要

编辑faces-config.xml时,Eclipse中的Faces Config Editor无法打开。这是在JavaServer Faces项目中。

详情

Eclipse 3.7.2

Eclipse m2e 1.0.1

m2e-wtp插件0.15

我已经看过这个问题(How to activate Faces configuration editor in Eclipse?),但是当我将Faces facet添加到我的项目中时,它不再编译。 可能是因为我导入了一个Maven项目,而不是使用Eclipse WTP项目创建向导。我有Maven目录结构(我更喜欢,不希望改变)。

问题是,当我从这个项目中打开faces-config.xml时,Faces Config Editor没有启动,所以我必须使用纯XML编辑它。这不是世界上最糟糕的事情......但如果有解决方案我想知道它。

谢谢! 亚历

修改

由于没有人回答这个问题,我可能需要提供更多信息。

Faces Config Editor 在以下情况下工作:

  • 使用项目创建向导创建动态Web项目
  • 导入现有的Maven项目,然后添加JSF Facet(但在这种情况下,项目不再编译,因为Eclipse无法找到Maven依赖项)

Faces配置编辑器 时无法工作:

  • 导入现有的Maven项目,如果我不添加JSF Facet

我意识到一个选择是:

  1. 导入现有的Maven项目
  2. 添加JSF Facet
  3. 将Maven添加到部署程序集
  4. 但是这个解决方案的问题是每次我更新项目配置(从Maven)Maven需要再次添加到部署程序集(Eclipse + Maven + Dynamic Web Project -> Maven overwrites Deployment Assembly)。这就是我使用m2e-wtp Eclipse插件的原因。它允许我使用Eclipse的默认Maven项目结构,并摆脱不必要的"魔法"。

    我唯一的问题是Faces Config Editor。

    对于详细程度

    抱歉

    这是一个愚蠢的错误和一个简单的修复。将JavaServer Faces方面添加到我的项目中是因为它破坏了构建,这只是因为Eclipse试图将JSF(MyFaces)添加到我的构建路径中,并且我已经通过Maven获得了MyFaces,这导致了冲突。该解决方案非常简单,保持JavaServer Faces方面的启用,并从我的构建路径中删除Eclipse添加的JSF库。

1 个答案:

答案 0 :(得分:1)

JavaServer Faces facet添加到项目时,它会破坏构建,因为Eclipse会尝试将JSF (MyFaces)库添加到构建路径,并且这些库已经通过Maven依赖项存在,从而导致名称冲突。

解决方案:启用JavaServer Faces facet(以激活Faces Config Editor),并从构建路径中删除Eclipse添加的JSF库。