我应该为我的 jar 中使用的库申请什么范围?

What scope should i apply for the libraries used in my jar ,?

我正在开发一个应用程序,该应用程序将发布到 nexus 存储库,用作其他应用程序的依赖项。 我正在使用 gradle 进行构建,并应用了 maven 插件。

当我执行 gradle 安装时,生成的 pom 中的依赖范围自动应用为 'runtime' 我添加为依赖的库。

我正在使用 "implementation" 添加我的依赖项。

在我的案例中,推荐的库范围是什么?

我看到编译会很有用,但现在已弃用。我应该使用 compileClasspath 吗?

谢谢!

依赖项的范围由您在 dependencies { } 块中定义的 configuration 控制。

Gradle 有 great table with descriptions 何时应该使用它们。

最常见的情况是,您将使用这两个:

  • implementation - 您应该在此处声明纯粹内部的依赖项,不打算向消费者公开。
  • api - 您应该在此处声明依赖项,这些依赖项会传递给消费者以进行编译。