配置了osc的mirror,为什么我pom.xml再指定PrimeFaces的Repository 不起作用呢?
当maven下载PrimeFaces的all-themes.jar 的时候,maven只会检查osc的nexus是否有这个jar。如果没有就直接报错了,而不会优先检查pom文件中的repository。
下面是我的maven setting.xml的配置
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<pluginGroups>
</pluginGroups>
<proxies>
</proxies>
<servers>
</servers>
<mirrors>
<mirror>
<id>nexus-osc</id>
<mirrorOf>*</mirrorOf>
<name>Nexus osc</name>
<url>http://maven.oschina.net/content/groups/public/</url>
</mirror>
</mirrors>
<profiles>
<profile>
<id>jboss-public-repository</id>
<repositories>
<repository>
<id>jboss-public-repository-group</id>
<name>JBoss Public Maven Repository Group</name>
<url>https://repository.jboss.org/nexus/content/groups/public/</url>
<layout>default</layout>
<releases>
<enabled>true</enabled>
<updatePolicy>never</updatePolicy>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>never</updatePolicy>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>jboss-public-repository-group</id>
<name>JBoss Public Maven Repository Group</name>
<url>https://repository.jboss.org/nexus/content/groups/public/</url>
<layout>default</layout>
<releases>
<enabled>true</enabled>
<updatePolicy>never</updatePolicy>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>never</updatePolicy>
</snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
<profile>
<id>jboss-staging-repository</id>
<repositories>
<repository>
<id>jboss-staging-repository</id>
<name>JBoss Staging Maven Repository</name>
<url>https://repository.jboss.org/nexus/content/groups/staging/</url>
<layout>default</layout>
<releases>
<enabled>true</enabled>
<updatePolicy>never</updatePolicy>
</releases>
<snapshots>
<enabled>false</enabled>
<updatePolicy>never</updatePolicy>
</snapshots>
</repository>
</repositories>
</profile>
<profile>
<id>jdk-1.4</id>
<activation>
<jdk>1.4</jdk>
</activation>
<repositories>
<repository>
<id>prime-repo</id>
<name>PrimeFaces Maven Repository</name>
<url>http://repository.primefaces.org</url>
<layout>default</layout>
</repository>
<repository>
<id>nexus</id>
<name>local private nexus</name>
<url>http://maven.oschina.net/content/groups/public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>nexus</id>
<name>local private nexus</name>
<url>http://maven.oschina.net/content/groups/public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
<profile>
<id>sonar</id>
<properties>
<sonar.jdbc.url>jdbc:mysql://localhost:3306/sonar</sonar.jdbc.url >
<sonar.jdbc.driver>com.mysql.jdbc.Driver</sonar.jdbc.driver >
<sonar.jdbc.username>root</sonar.jdbc.username >
<sonar.jdbc.password>11111</sonar.jdbc.password >
<sonar.host.url>http://localhost:9000</sonar.host.url > <!-- Sonar服务器访问地址 -->
</properties>
</profile >
</profiles>
<activeProfiles>
<activeProfile>jboss-public-repository</activeProfile>
<activeProfile>sonar</activeProfile>
<!-- <activeProfile>jboss-staging-repository</activeProfile> -->
</activeProfiles>
</settings>
希望大家帮我看一下,是什么原因呢?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
恩,这个就是传说中的@小香蕉 他爹
@小香蕉两种方法:
1.settings.xml添加jdk-1.4profile到 <activeProfiles>中。
2.项目中的pluginRepositories是用来查找mavenPlugin的,不是查找dependencies.
将
<pluginRepositories><pluginRepository><id>prime-repo</id><name>PrimeFacesMavenRepository</name><url>http://repository.primefaces.org</url><releases><enabled>false</enabled></releases></pluginRepository></pluginRepositories>改成
<repositories><repository><id>prime-repo</id><name>PrimeFacesMavenRepository</name><url>http://repository.primefaces.org</url></repository></repositories>
两种方法:
1.settings.xml添加jdk-1.4profile到 <activeProfiles>中。
2.项目中的pluginRepositories是用来查找mavenPlugin的,不是查找dependencies.
将
<pluginRepositories><pluginRepository><id>prime-repo</id><name>PrimeFacesMavenRepository</name><url>http://repository.primefaces.org</url><releases><enabled>false</enabled></releases></pluginRepository></pluginRepositories>改成
<repositories><repository><id>prime-repo</id><name>PrimeFacesMavenRepository</name><url>http://repository.primefaces.org</url></repository></repositories>
我把你的项目down下来用mvncompile跑了一下,可以成功,不知道你要执行哪个命令?
--因为我上传的代码中注释掉了all-theme那个jar的依赖运行的命令是mvncleanpackage你还是先看看Sonatype官方网站那几本免费的Maven书吧。