lein-npm 下载 dependencies of dependencies (re-frame template)
lein-npm downloads dependencies of dependencies (re-frame template)
将lein-npm
插件添加到我的re-frame
项目以管理npm
依赖项时,lein-npm
意外添加了依赖项的依赖项。我的理解是那是不必要的,因为它们要么包含在我的依赖项的 jar 中,要么不需要(因为首先不需要将 lein-npm
添加到我的项目中)。
使用 re-frame
模板,我构建了我的 project.clj
:
的这个最小示例
(defproject stamm "0.1.0-SNAPSHOT"
:dependencies [[org.clojure/clojure "1.8.0"]
[re-frame "0.9.1"]]
:plugins [[lein-npm "0.6.2"]])
现在 returns 正在呼叫 lein npm list
以下内容:
project@0.1.0-SNAPSHOT /path/to/my/project
├── UNMET DEPENDENCY karma@1.0.0
├── UNMET DEPENDENCY karma-chrome-launcher@0.2.0
├── UNMET DEPENDENCY karma-cljs-test@0.1.0
└── UNMET DEPENDENCY karma-junit-reporter@0.3.8
这导致大约 15 MB 的依赖项被下载,只需添加 lein-npm
。我没有在我的 project.clj
中声明这里显示的任何 karma*
依赖项(事实上:我此时根本没有声明任何 npm
依赖项)。它们源自依赖项 [re-frame "0.9.1"]
.
有什么办法可以避免吗?
我发布了 re-frame 0.9.2,它将 NPM 依赖项放在 :devDependencies
键中。这将意味着它们不可传递,并且 re-frame 使用项目不需要安装 karma*
.
原回答:
在撰写本文时,我认为没有办法解决这个问题,但我已经在 https://github.com/RyanMcG/lein-npm/issues/50 上打开了一个问题来报告它。
将lein-npm
插件添加到我的re-frame
项目以管理npm
依赖项时,lein-npm
意外添加了依赖项的依赖项。我的理解是那是不必要的,因为它们要么包含在我的依赖项的 jar 中,要么不需要(因为首先不需要将 lein-npm
添加到我的项目中)。
使用 re-frame
模板,我构建了我的 project.clj
:
(defproject stamm "0.1.0-SNAPSHOT"
:dependencies [[org.clojure/clojure "1.8.0"]
[re-frame "0.9.1"]]
:plugins [[lein-npm "0.6.2"]])
现在 returns 正在呼叫 lein npm list
以下内容:
project@0.1.0-SNAPSHOT /path/to/my/project
├── UNMET DEPENDENCY karma@1.0.0
├── UNMET DEPENDENCY karma-chrome-launcher@0.2.0
├── UNMET DEPENDENCY karma-cljs-test@0.1.0
└── UNMET DEPENDENCY karma-junit-reporter@0.3.8
这导致大约 15 MB 的依赖项被下载,只需添加 lein-npm
。我没有在我的 project.clj
中声明这里显示的任何 karma*
依赖项(事实上:我此时根本没有声明任何 npm
依赖项)。它们源自依赖项 [re-frame "0.9.1"]
.
有什么办法可以避免吗?
我发布了 re-frame 0.9.2,它将 NPM 依赖项放在 :devDependencies
键中。这将意味着它们不可传递,并且 re-frame 使用项目不需要安装 karma*
.
原回答:
在撰写本文时,我认为没有办法解决这个问题,但我已经在 https://github.com/RyanMcG/lein-npm/issues/50 上打开了一个问题来报告它。