我正在开发一个非常基本的Gradle插件(主要是为了获得经验),并且我已经在Bintray存储库中发布了一个版本,该版本应该可以查看here

我已经将我的存储库链接到JCenter(并且可以找到我的插件here),现在,为了测试所有工作,我试图从Gradle构建脚本中下载这些 Artifact 并将我的插件应用于一个模拟项目:

apply plugin: 'semver'
apply plugin: 'java'

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.github.tagc:semver-plugin:0.1.0'
    }
}

semver {
    versionFilePath = 'version.properties'
}

但是,Gradle无法解决该依赖关系并引发此异常:
FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring root project 'TestSemver'.
> Could not resolve all dependencies for configuration ':classpath'.
   > Could not find com.github.tagc:semver-plugin:0.1.0.
     Searched in the following locations:
         https://jcenter.bintray.com/com/github/tagc/semver-plugin/0.1.0/semver-plugin-0.1.0.pom
         https://jcenter.bintray.com/com/github/tagc/semver-plugin/0.1.0/semver-plugin-0.1.0.jar
     Required by:
         :TestSemver:unspecified

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 3.703 secs

这是因为JCenter似乎没有托管我的文件(在com/github/tagc下)。我不确定为什么会这样。在确认我的存储库已与JCenter链接之后,我是否还需要采取其他步骤以使其托管我上传的文件,以便可以按构建脚本中显示的方式访问它们?还是只是需要一些时间才能将文件显示在JCenter上?自从我的存储库链接到JCenter以来,已经有大约5个小时了。

任何帮助或建议,将不胜感激。

最佳答案

事实证明,我只需要耐心等待,让JCenter更新。 It's on there now,我的构建脚本运行正常。

考虑到更新需要相当长的时间(对我来说大约需要12个小时),我认为通过让初次使用的用户知道冗长的更新过程,并且他们并没有简单地错过更新时间,可能会改善用户体验步。这将消除您对“我错过了一步,如果我错过了一步,我会永远等待吗?”的担忧。

除此之外,Bintray UX绝对很棒。

10-07 18:25