gpt4 book ai didi

playframework-2.0 - play 2.4 中的插件、依赖项、模块和子项目有什么区别?

转载 作者:行者123 更新时间:2023-12-01 09:53:15 24 4
gpt4 key购买 nike

我是 playframework 的新手,刚刚学习。我在依赖项、模块、插件和子项目之间有点困惑。它们彼此有何不同?

这是我的理解,我可能错了。

依赖项 - 是运行应用程序所需的所有库。
子项目 - 是另一个父应用程序中的 Play 应用程序。
不确定“插件”和“模块”。

有人可以解释一下它们有何不同吗?

注意:我正在使用 Play 2.4 和 play-java,不确定定义是否会随着 play-scala 改变。

最佳答案

您最初的解释非常正确。

依赖项确实是库,更严格地说,它们是通过存储库(最大的存储库称为 Maven central)分发并由 SBT 下载的 jar 文件(包含 java 类的 zip 文件的花哨名称)。

最好将子项目视为直接嵌入到您的构建中的库。如果你运行 publishLocal ,您的子项目将被打包到一个 jar 中并部署到您的本地存储库。如果您已将构建配置为发布到特定的公共(public)(或私有(private))存储库,当您运行 publish , jar 及其元数据将被推送到那里,其他项目可以在其依赖项中声明它。事实上,SBT 构建中的每个项目都属于这一类。您的游戏项目实际上是一个可以被其他东西依赖的库。

插件和模块是灰色术语,在不同的上下文中表示不同的东西。

一方面,有 sbt 插件,这些插件在你的 project/plugins.sbt 中声明。 ,并且这些为您的构建添加了新行为,例如编译更少文件的能力。 Play 的开发模式部分由 sbt 插件实现。

但是 Play 运行时有插件。我们目前正在逐步淘汰这个术语,转而使用模块这个词,但它仍然有一些用处。

我们已经发布了一些关于模块在这里的文档:

https://www.playframework.com/documentation/2.4.x/Modules

所以一个模块和一个依赖可能是同一个东西,也可能不是,一个依赖可能提供许多模块,一个模块可能由许多传递依赖提供。

关于playframework-2.0 - play 2.4 中的插件、依赖项、模块和子项目有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33771269/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com