我已将Java库发布到https://bintray.com/tylerlong/maven/ringcentral-pubnub
我试图通过gradle使用它:
dependencies {
...
compile 'com.ringcentral:ringcentral-pubnub:1.0.0-beta10'
}
运行./gradlew build
时,出现以下错误:
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':compileJava'.
> Could not resolve all files for configuration ':compileClasspath'.
> Could not find com.ringcentral:ringcentral-pubnub:1.0.0-beta10.
Searched in the following locations:
- https://jcenter.bintray.com/com/ringcentral/ringcentral-pubnub/1.0.0-beta10/ringcentral-pubnub-1.0.0-beta10.pom
- https://jcenter.bintray.com/com/ringcentral/ringcentral-pubnub/1.0.0-beta10/ringcentral-pubnub-1.0.0-beta10.jar
Required by:
project :
这是build.gradle
文件:https://github.com/ringcentral/ringcentral-pubnub-java/blob/master/build.gradle
我真的不知道为什么它不起作用。我在这里还有另一个图书馆,它的运作就像一个魅力:https://bintray.com/tylerlong/maven/ringcentral。我以类似的方式发布了这两个库。为什么一个起作用而另一个却不起作用?
以下是重现该问题的示例项目:https://github.com/tylerlong/ringcentral-pubnub-demo
答案 0 :(得分:2)
在给定的Github示例中;您需要配置Gradle构建以使用您的自定义(bintray)Maven存储库。在当前设置下,它只会在jcenter
中显示,并且您的依赖项无法从该存储库中获得(因此会出现错误)。
确保您的构建包含:
repositories {
jcenter()
maven {
url 'https://dl.bintray.com/tylerlong/maven'
}
}
关于
为什么一个工作而另一个却不工作?
也许您以不同的方式发布了“一个”和“另一个”;这样在正确的存储库中只有一个?或者,您的构建使用mavenLocal
,并且实际上在本地安装了一个dep。无论如何-请仔细检查您的存储库!
答案 1 :(得分:0)
我做的一切正确,但是我忘了最后一步:链接到jcenter。
将软件包提交到jcenter之后,得到以下答复:
您的要求包括您的包裹 Bintray的JCenter中的/ tylerlong / maven / ringcentral-pubnub已被 批准。
然后一切都像魅力一样!