Deployment 无法部署文件';。md5';。要在上设置校验和的目标文件';t存在人工制品-JFrog
我正在尝试为我们的一个JAR将md5文件部署到JFrog artifactory。该文件的扩展名为md5。文件名具有jar的名称,因此,如果jar被称为file1.jar,那么它的md5将是file1.md5。我们的人工制品版本是3.0。我们知道Artifactory有它的md5校验和,它是在jar移交给Artifactory时创建的。我们提供的md5是在创建jar时创建的,因此我们认为它很有价值 但是,当我们尝试使用来自Bambol的Artifactory Gradle插件或直接手动将文件上载到Artifactory时,我们会得到错误: 无法部署文件“filename.md5”。要设置校验和的目标文件不存在Artfactory 因此,听起来好像需要为我们试图部署的md5设置目标文件(md5是校验和的文件),但我在上传界面的任何地方都没有看到这样的属性Deployment 无法部署文件';。md5';。要在上设置校验和的目标文件';t存在人工制品-JFrog,deployment,jar,md5,checksum,artifactory,Deployment,Jar,Md5,Checksum,Artifactory,我正在尝试为我们的一个JAR将md5文件部署到JFrog artifactory。该文件的扩展名为md5。文件名具有jar的名称,因此,如果jar被称为file1.jar,那么它的md5将是file1.md5。我们的人工制品版本是3.0。我们知道Artifactory有它的md5校验和,它是在jar移交给Artifactory时创建的。我们提供的md5是在创建jar时创建的,因此我们认为它很有价值 但是,当我们尝试使用来自Bambol的Artifactory Gradle插件或直接手动将文件上载
是否可以在Artifactory中执行此操作?如果可以,如何执行?正如您所提到的,Artifactory知道所有工件的校验和(它们不存储在文件中,但始终可以通过向任何文件名添加.md5或.sha1来访问)。 您不能存储另一个正确的校验和,因为只有一个正确的校验和(Artifactory已经知道它存储了文件) 因此,没有理由(也没有办法)将md5和sha1文件部署到Artifactory。您可以将存储库的配置为:
如果部署的.jar文件名为
file1.jar
,则Artifactory希望.md5文件名为file1.jar.md5
。如果部署名为file1.md5
的.md5文件,Artifactory将期望在同一路径中找到名为file1
的文件,它不会在您的情况下找到,因此会出现错误。虽然Artifactory确实不允许您上载.md5
和.sha1sum
文件,但您可以很容易地绕过此限制,因为这些文件无论如何都是由Artifactory生成的
确保对要上载的文件列表进行排序,以确保签名文件位于文件本身之后
使用此选项上载文件
您将看到限制不再存在,因为Artifactory将生成校验和,并且上载脚本将在执行上载之前验证校验和是否匹配
另一个好处是,这种上传方法速度更快,因为它不会将同一个文件上传两次到服务器,也允许您运行多次而不会出现问题。这家伙想存储校验和文件,这是一个完美有效的用例。以下是正确答案——主要是您需要先上传原始文件。上载校验和文件是不需要的,因为已经生成了校验和文件。我试过了,效果很好。