JSF正确使用jsf-api依赖

时间:2014-12-03 16:13:07

标签: maven jsf

好的,我对jsf-api实现之间的差异感到有些困惑。

<dependency>
      <groupId>com.sun.faces</groupId>
      <artifactId>jsf-api</artifactId>
      <version>2.2.8</version>
    </dependency>

<dependency>
    <groupId>javax.faces</groupId>
    <artifactId>jsf-api</artifactId>
    <version>2.1</version>
</dependency>

我不确定这两者之间的区别。我认为他们做了同样的事情,并允许javax.faces导入,但现在我已经混淆了自己。任何人都可以解释这两个差异吗?谢谢:))

1 个答案:

答案 0 :(得分:2)

自第一个版本以来,Maven JSF-API依赖关系的groupId发生了一些变化。对于JSF 2.2(当前版本正如我所写),如果您在支持JSF的容器中运行,则应使用以下推荐的依赖项:

<dependency>
  <groupId>javax.faces</groupId>
  <artifactId>javax.faces-api</artifactId>
  <version>2.2</version>
  <scope>provided</scope>
</dependency>

如果您的容器不支持JSF(如Tomcat),如果您想使用Mojarra(默认的JSF实现),请使用以下依赖项:

<dependency>
  <groupId>org.glassfish</groupId>
  <artifactId>javax.faces</artifactId>
  <version>2.2.8</version>
</dependency>

其他建议和信息可在official page of JSF上找到。