首页 > 解决方案 > 如何在 gradle 6.7.1 中锁定依赖项?

问题描述

我正在阅读gradle 中的依赖锁定文档。我将以下咒语放在我的deps.gradle文件中,并且版本仍在滑动。

dependencyLocking {
  lockAllConfigurations()
}

然后我注意到警告“上面将锁定所有项目配置,但不是 buildscript 的”,但我找不到解释差异的文档。

有什么区别,如何锁定所有依赖项?

请注意,我知道另一种锁定依赖项的方法似乎确实有效,但它似乎非常冗长,所以我想尽可能避免它:

  implementation('com.github.jnr:jffi') {
    version {
       strictly '1.2.23'
    }
  }

标签: javagradledependency-management

解决方案


lockAllConfigurations()

只会使您所有的配置都符合依赖锁定的条件。它不会自动锁定依赖项。否则动态版本将变得无用,您可以在添加依赖项时简单地指定确切的版本号。

要实际生成依赖锁文件,您需要在运行任务时将 --write-locks 传递给 gradle,例如:

gradle dependencies --write-locks

请参阅文档的这一部分


推荐阅读