我已经成功发布了一个名为SmartToolbar到jcenter
的库。
但是,当我将其更新为新版本并再次发布时,我遇到一个问题,它没有在gradle
中显示更新至新版本的建议消息。
当前,该库的最新版本为1.0.12
,但是如您在屏幕快照中所见,它没有显示建议消息升级到版本1.0.12
作为库上方的库。
我想修复它,因为我想通知所有使用它的开发人员从我的图书馆获取最新更新。
注意:并没有显示有可用的新版本的建议,但是如果我们知道最新版本,我们仍然会获得最新更新。因此只有知道最新版本的我。n
发布新版本时,我已经更新了versionName
,我将其创建为PUBLISH_VERSION
的自定义变量,以与下面的publish-android-library-plugin一起使用,如下所示。
因此,我想更多地了解发布新版本时错过了哪些部分? 还是我的publish-android-library-plugin中有不正确的地方?也许您需要查看this raw code来检查我的错误。
注意::该库已同步到maven central
答案 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的答案(已接受的答案),以获取进行更新检查的说明。