12

我正在尝试将spring-security-saml2-core-1.0.4.RELEASE我的项目用作 maven 依赖项并在以下情况下遇到两个问题mvn install

  1. 失败"Could not find artifact xml-apis:xml-apis:jar:1.4 ... "我在 Maven 存储库和build.gradle文件中列出的存储库中都没有找到 1.4 版本的 xml-apis 依赖项。作为一种解决方法,我被迫向我的项目添加版本略有不同的显式依赖项:

    <dependency>
        <groupId>xml-apis</groupId>
        <artifactId>xml-apis</artifactId>
        <version>1.4.01</version>
        <scope>runtime</scope>
    </dependency>
    
  2. 失败:"Could not find artifact org.opensaml:opensaml:jar:2.6.6 ..." and "Could not find artifact ca.juliusdavies:not-yet-commons-ssl:jar:0.3.17 ..."。作为一种解决方法,我被迫添加显式的 maven 存储库,以便我能够在我的项目中找到工件:

    <repository>
        <id>alfresco</id>
        <name>Alfresco</name>
        <url>https://artifacts.alfresco.com/nexus/content/repositories/public/</url>
    </repository>
    <repository>
        <id>mulesoft</id>
        <name>Mulesoft</name>
        <url>http://repository.mulesoft.org/releases/</url>
    </repository>
    

是否可以在不声明显式依赖项和存储库的情况下处理构建问题?

4

1 回答 1

12

你并不孤单:https ://github.com/spring-projects/spring-security-saml/issues/237

xml-apis1.0.4.RELEASE 版本中使用的工件版本实际上是错误的,就像你提到的版本1.4.01是正确的一样。

只要剩下的两个库中使用的版本没有上传到公共 maven 存储库,恐怕我们就无法使用第三方存储库了。

注意:我建议使用 Shibbolet 存储库来获取2.6.6OpenSaml 的版本:https ://wiki.shibboleth.net/confluence/display/OpenSAML/OSTwoUsrManJavaInstall

        <repository>
            <id>Shibbolet</id>
            <name>Shibbolet</name>
            <url>https://build.shibboleth.net/nexus/content/repositories/releases/</url>
        </repository>

我想知道这是否是版本1.0.3.RELEASE仍被标记为当前版本并且版本1.0.4.RELEASE被标记为快照(https://projects.spring.io/spring-security-saml/)的原因,尽管他们发表了关于该版本的博客文章版本1.0.4.RELEASEhttps ://spring.io/blog/2018/03/16/spring-security-saml-1-0-4-released ....目前没有答案:https ://github.com/spring -projects/spring-security-saml/issues/242

请注意,使用版本1.0.3.RELEASE时,使用 maven Central 时,maven 依赖项没有问题。

于 2018-08-29T14:41:14.793 回答