为什么我需要Primefaces Maven Repository?

时间:2014-10-15 12:00:23

标签: java maven primefaces themes

为什么在使用primefaces的all-themes依赖时需要Primefaces Maven Repository? 当我只使用1个依赖时,我没有错误并且可以工作。 但是当我使用所有主题时,我会丢失工件org.primefaces.themes:all-themes.jar:1.0.10,但为什么?

<repositories>
    <repository>
        <id>prime-repo</id>
        <name>PrimeFaces Maven Repository</name>
        <url>http://repository.primefaces.org</url>
        <layout>default</layout>
    </repository>
</repositories>
<dependency>
        <groupId>org.primefaces</groupId>
        <artifactId>primefaces</artifactId>
        <version>5.0</version>
</dependency>
<dependency>
        <groupId>org.primefaces.themes</groupId>
        <artifactId>all-themes</artifactId>
        <version>1.0.10</version>
</dependency>

4 个答案:

答案 0 :(得分:2)

Maven的默认存储库是“maven central”。那里有很多工件,但有些供应商可能没有将工件放在那里,而primefaces就是其中之一。 Maven将在maven中心寻找jar并且找不到它。如果你没有指定它也应该在Primefaces Maven Repository(它确实有工件)中查找,它就找不到工件。

答案 1 :(得分:2)

人们已经决定不将他们的包交付到Maven中心,这就是为什么你需要单独定义主面库的原因。

出于这样的目的,最好开始使用存储库管理器,该管理器可以在公司的中心位置配置,以便公司使用primeface存储库。这将使生活更轻松。

答案 2 :(得分:2)

<强>问题:

但是当我使用所有主题时,我会丢失工件org.primefaces.themes:all-themes.jar:1.0.10,但为什么?

<强>答案:

因为primefaces repo中不存在您使用它的maven全主题版本。目前maven最新版本为1.0.8

<dependency>
    <groupId>org.primefaces.extensions</groupId>
    <artifactId>all-themes</artifactId>
    <version>1.0.8</version>
</dependency>

Maven Repo

答案 3 :(得分:1)

或者,您可以使用Icefaces中的单个主题

<dependency>
    <groupId>org.icefaces.ace-themes</groupId>
    <artifactId>ace-sunny</artifactId>
    <version>4.1.0</version>
</dependency>

在您的XHTML页面中包含样式:

<h:outputStylesheet name="theme.css" library="ace-sunny"/>