gpt4 book ai didi

java - Windows 上的 Gradle flatdir 获取 : Could not find property 'url'

转载 作者:行者123 更新时间:2023-11-30 07:19:30 24 4
gpt4 key购买 nike

尝试让 flatdir 存储库在我的 Windows 电脑上工作。

但是当我尝试列出存储库时,它失败并出现以下错误。

列出文件会显示 jar。

运行检查存储库任务显示该目录存在。

运行 uploadArchves 似乎没有执行任何操作(本地存储库中没有文件)。

谢谢。

编辑:事实证明,flatdir 没有 url 属性,因此这解释了构建错误,但在 uploadArchives 之后,flatdir 目录中仍然没有任何内容。

如何让 uploadArchives 真正执行某些操作?

编辑:这里是有效的构建文件:

apply plugin: 'java'
repositories {
flatDir {
name "localRepository"
dirs "d:/ray/gradlerepository/"
}
}
uploadArchives {
repositories {
add project.repositories.localRepository
}
}

这是原始内容:

    D:\ray\dev\conradapps\lib1>gradle mLR
:myListRepositories
Repositories:
Name: BintrayJCenter; url: https://jcenter.bintray.com/
:myListRepositories FAILED

FAILURE: Build failed with an exception.

* Where:

Build file 'D:\ray\dev\conradapps\lib1\build.gradle' line: 15

* What went wrong:
Execution failed for task ':myListRepositories'.
> `Could not find property 'url'` on org.gradle.api.internal.artifacts.repositorie
s.DefaultFlatDirArtifactRepository_Decorated@a7a0831.

构建文件:

apply plugin: 'java'
repositories {
//jcenter()
flatDir {
name "localRepository"
dirs "d:/ray/gradlerepository/"
}
}
dependencies {
testCompile 'junit:junit:4.12'
}
task myListRepositories << {
println "Repositories:"
project.repositories.each { println "Name: " + it.name + "; url: " + it.url }
}
task myListArchives << {
println "Archives Artifacts: " + configurations.archives.allArtifacts
}
task myCheckRepository << {
if(new File("d:/ray/gradlerepository").exists()) println("file exists");
else println("file not found!");
}

最佳答案

根据API FlatDirectoryArtifactRepository 没有 url 属性(但它有一个 dirs),尽管您尝试在此处访问它

project.repositories.each { println "Name: " + it.name + "; url: " + it.url }

这适用于 jcenter,因为它是一个 Maven 存储库(只是另一种存储库类型)并且它具有这样的属性。

您可以修改您的任务,使其仅显示 ArtifactRepository interface 的公共(public)存储库字段或者添加一些逻辑来检查存储库类型,以便针对不同的存储库类型以不同的方式打印存储库信息,并防止访问不存在的字段。

关于java - Windows 上的 Gradle flatdir 获取 : Could not find property 'url' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37820342/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com