我将新版本发布到jcenter后,我的Android库不建议在gradle中升级新版本

时间:2018-09-10 04:50:35

标签: android maven upgrade bintray jcenter

image

我已经成功发布了一个名为SmartToolbarjcenter的库。
但是,当我将其更新为新版本并再次发布时,我遇到一个问题,它没有在gradle中显示更新至新版本的建议消息。

当前,该库的最新版本为1.0.12,但是如您在屏幕快照中所见,它没有显示建议消息升级到版本1.0.12作为库上方的库。

我想修复它,因为我想通知所有使用它的开发人员从我的图书馆获取最新更新。

注意:并没有显示有可用的新版本的建议,但是如果我们知道最新版本,我们仍然会获得最新更新。因此只有知道最新版本的我。n

发布新版本时,我已经更新了versionName,我将其创建为PUBLISH_VERSION的自定义变量,以与下面的publish-android-library-plugin一起使用,如下所示。

image2

因此,我想更多地了解发布新版本时错过了哪些部分? 还是我的publish-android-library-plugin中有不正确的地方?也许您需要查看this raw code来检查我的错误。

注意::该库已同步到maven central

1 个答案:

答案 0 :(得分:6)

*更新*

根据我们亲爱的朋友JBaruch的话,他说:

  

问题是无论您的库是哪个存储库   解决(是jcenter()mavenCentral()或任何其他   存储库),则最新版本的检查已硬编码go to Maven Central

在这里回答Add Warning "A newer version of ..... is available" for custom library

相似的问题时,您可以了解更多有关他的想法的信息。

因此,按照他的建议,您可以尝试syncing your library with maven

*先前的答案:我将其保留在这里,因为我仍然认为了解Android Studio厌恶获取最新更新的思考过程仍然很重要*

版本更新弹出通知是由于Android Studio中的Lint规则(称为Newer Library Versions Available)引起的。 How to check if gradle dependency has new version表示,Android Studio的最新更新已修改了该lint规则,因此将不再向用户通知新的非Google库版本。

JBaruch在How to check what is the latest version of a dependency to use in gradle中的回答给出了Google进行此更改的充分理由:

  

“依靠最新版本确实是一件危险的事情。   如果不进行任何更改,构建可能会中断,仅因为某些   库破坏了向后兼容性。”

Google希望开发人员坚持使用特定的库版本,并且仅在需要时更新 。因此,检查更新已成为手动流程。

那么,您如何从这里继续?如果您只想检查是否已将新库更新通知Android Studio,则可以使用Android Studio的检查更新的正确方法。您可以在How to check if gradle dependency has new version中查看Adam S的答案(已接受的答案),以获取进行更新检查的说明。