Java 为什么我需要Primefaces Maven存储库?
使用Primefaces的所有主题依赖项时,为什么需要Primefaces Maven存储库? 当我只使用1 dependcy时,我没有错误,可以工作。 但是当我使用所有主题时,我会得到缺少的工件org.primefaces.themes:all-themes.jar:1.0.10,但是为什么呢Java 为什么我需要Primefaces Maven存储库?,java,maven,primefaces,themes,Java,Maven,Primefaces,Themes,使用Primefaces的所有主题依赖项时,为什么需要Primefaces Maven存储库? 当我只使用1 dependcy时,我没有错误,可以工作。 但是当我使用所有主题时,我会得到缺少的工件org.primefaces.themes:all-themes.jar:1.0.10,但是为什么呢 <repositories> <repository> <id>prime-repo</id> <name&
<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>
优质回购
PrimeFacesMaven存储库
http://repository.primefaces.org
违约
org.primefaces
素面
5
org.primefaces.themes
所有主题
1.0.10
Maven的默认存储库是“Maven central”。那里有很多工件,但是一些供应商可能没有将它们的工件放在那里,primefaces就是其中之一。Maven将在Maven central中查找jar,但不会找到它。如果您没有指定它也应该在Primefaces Maven存储库中查找(该存储库中确实有工件),那么它将找不到工件 primfaces人员决定不将他们的包交付到Maven central,因此您需要单独定义prime faces存储库
为此,最好开始使用存储库管理器,该管理器可以配置在中心位置,以便您的公司使用prime faces存储库。这将使生活更轻松。问题: 但是当我使用所有主题时,我会得到缺少的工件
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>
回答:
因为您正在使用的primefaces
所有主题的版本在maven
repo中不存在。目前maven
拥有1.0.8
最新版本
<dependency>
<groupId>org.primefaces.extensions</groupId>
<artifactId>all-themes</artifactId>
<version>1.0.8</version>
</dependency>
org.primefaces.extensions
或者,您可以使用来自Icefaces的单个主题
<dependency>
<groupId>org.icefaces.ace-themes</groupId>
<artifactId>ace-sunny</artifactId>
<version>4.1.0</version>
</dependency>
org.icefaces.ace-themes
埃斯阳光酒店
4.1.0
在XHTML页面中包括以下样式:
<h:outputStylesheet name="theme.css" library="ace-sunny"/>
我可以知道您使用的是哪个版本的primefaces
吗?我使用的是primefaces 5.0,您是否可以为相关primefaces添加您的maven
依赖项?这样可以更清楚地理解我认为您不需要primefaces存储库。primefaces工件位于maven central:-它可能是新的,而全新的版本不是,或者只是几天后。快照版本可能永远不会出现在maven central中(如果您计划尽早采用新版本)。那么你就需要额外的存储库了。这一点你可能是对的。我认为要使用该版本,他必须将org.primefaces.extensions作为groupId,并且必须使用版本1.0.8。org.primefaces.themes和org.primefaces.extensions之间的区别是什么?当我需要什么的时候?我真的不知道,只是maven central的org.primefaces.extensions中有一个名为all themes的工件(即,不需要添加存储库)。如果您已经添加了存储库并且它正常工作,那么可能不值得研究。因为底层技术是jQuery,所以它一般应该是兼容的。Primefaces 5.3可以正常工作,但在细节上可能有一些限制。Primefaces需要结构化css,这不是基于jquery的。。。这(目前)起作用的原因(或仅与您所检查的内容)是IceFaces组件在一定程度上是PrimeFaces组件的分支。这种兼容性在将来会越来越少,因此,这不是一个好的建议。事实上,它现在起作用。在Primefaces将自己的主题放在Central之前,我不认为有任何理由反对使用它。否则这纯粹是猜测。所以你的实际问题是他们没有把主题放在maven central?那么添加一个附加存储库就是拦截器?好的……使用公司nexus或将自己的项目上载到Central可能会阻止您添加其他存储库。显然,其他人也希望如此。重复: