首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Clojure/ClojureScript项目中,声明`deps.edn`文件上的依赖项而不是使用“影子-cljs.edn”有什么好处?

在Clojure/ClojureScript项目中,声明`deps.edn`文件上的依赖项而不是使用“影子-cljs.edn”有什么好处?
EN

Stack Overflow用户
提问于 2022-11-03 23:31:08
回答 1查看 61关注 0票数 0

我一直在使用Clojure、ClojureScript、lein、影子cljs、reagent、试剂、Emacs和苹果酒来开发Clojure/ClojureScript动态web应用程序项目。

目前,该项目使用project.cljshadow-cljs.edn声明依赖项。

关于改变事物的讨论是这样的:

1-我们将开始使用名为lein莱茵-工具.戴普插件

2-此外,我们将调整shadow-cljs.edn文件,以便删除依赖项,并且该文件仅指示:

代码语言:javascript
复制
:dependencies true

最后,我们将创建一个包含所有依赖项的新deps.edn文件。

目前尚不完全清楚这一进程的好处。

我可以看到一个:它们不是声明对shadow-cljs.ednproject.clj的依赖关系,而是位于一个文件:deps.edn中。

通过deps.edn进行依赖声明而不是通过:dependencies使用shadow-cljs.ednproject.clj还有另一个好处吗?

例如,这会影响托管在GitHub包上的Maven包的使用吗?deps.edn这样做更好吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-11-04 08:48:37

deps.edn的好处是它支持直接的git依赖关系(即。:git/url),以及一种简单的本地依赖机制(即。:local/root)。它也更加现代化,成为“默认”。

shadow-cljs.edn不支持这些特性,project.clj有一些通过插件或其他机制(例如。checkouts)。

因此,如果您想要这些特性,那么使用deps.edn是有意义的。但是,取决于项目的复杂程度,这可能不是一个容易的切换。

shadow-cljs最终并不关心您如何管理您的依赖关系,但是如果您将东西从shadow-cljs.edn中移出,您将失去它的“力量”。如果通过shadow-cljs.edn进行管理,它就会试图防止某些错误(例如。),当通过deps.edn运行时,它无法做到这一点。因此,您可能需要手动处理这些问题。它可能只是起作用,真的取决于你的项目。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74310616

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档