2013-02-20 61 views
1

我很好奇,如果有一种方法可以为ivy.xml文件中的依赖项指定校验和值。你可以在Apache Ivy中指定依赖关系校验和吗?

例如,我有以下依赖性:

<dependency org="org.hibernate" name="hibernate-core" rev="3.5.6-Final" 
    force="true"/> 

是否有可能对我来说,做这样的事情?

<dependency org="org.hibernate" name="hibernate-core" rev="3.5.6-Final" 
    checksum="10249177261810a3ba8f3b9a468d06e0" force="true"/> 

主要的原因我想这样做是为了安全,确保在远程仓库的依赖,当我把它拉下来,将来也不会改变。我想根据我自己的ivy.xml文件中的校验和值来检查它,而不是在远程主机上。

回答

2

看看ArtifactoryNexus。这些是本地的Maven仓库,可以从各种第三方仓库下载罐子。

两者均可设置为在本地缓存远程工件,而不是在下载后重新下载它们。这将解决您在远程存储库中更改jar的问题。

0

常春藤(和Maven的这个问题)中的校验和的主要目的是确保下载正常工作,并且文件在传输或存储中没有损坏。

使用校验和进行安全检查的唯一常春藤功能是packager resolver。这很有意义,因为打包器存储库文件被设计为单独托管到源文件。

所以最后,最好的解决方案是遵循David的建议,并在您的网络中部署Maven存储库管理器。向Maven Central提供Sonatype have recently offered SSL connectivity,它还可以保护您免受远程存储库欺骗。