什么:范围"提供"是什么意思?

Ole*_*Cat 11 clojure leiningen

我已经看到很多地方用Clojure项目中的某些依赖项标记了:scope "provided"(示例).

这是什么意思?

Abh*_*kar 10

这本质上是一个 Maven 概念。Provided意味着给定的依赖项已经与环境一起打包(或“提供”,如果你愿意的话)。jar 是编译所必需的,但它不会与应用程序一起打包。这些也不是传递依赖。

要了解有关传递依赖的更多信息,请参阅此处


lee*_*ski 5

您可以阅读有关 maven 范围的信息,因为它是同一回事。Maven 范围编译和提供给 JAR 打包之间的区别。所以据我所知,如果你在你的项目中使用这个库,你还应该将这些依赖项添加到你的 project.clj 中,连同库本身(我仍然可能会误会)

您还可以使用其他一些范围:https : //maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#Dependency_Scope