Aaah,我明白了。记录一下我是如何得出错误结论的
我已从Maven仓库中删除了log4j
rm -rf ~/.m2/repository/org/apache/logging/log4j/
运行了我的构建
$ clojure -X:depstar uberjar :jar target/foo.jar
Downloading: org/apache/logging/log4j/log4j-core/2.14.1/log4j-core-2.14.1.pom from central
Downloading: org/apache/logging/log4j/log4j/2.14.1/log4j-2.14.1.pom from central
Downloading: org/apache/logging/logging-parent/3/logging-parent-3.pom from central
Downloading: org/apache/logging/log4j/log4j-api/2.14.1/log4j-api-2.14.1.pom from central
Downloading: org/apache/logging/log4j/log4j-core/2.14.1/log4j-core-2.14.1.jar from central
Downloading: org/apache/logging/log4j/log4j-api/2.14.1/log4j-api-2.14.1.jar from central
...
然后我疑惑为什么它会下载log4j?
然后我看到Alex在clojure/tools.logging中提交的《更新log4j》
https://github.com/clojure/tools.logging/commit/8e8f899c00d79b03a7f5a3a83e52433d689feaf7
(没有注意到pom.xml
),并且我没有注意到它仅在project.clj
的dev
配置文件中,因为它在文件中更高,并且没有被列入GitHub上的增删列表..
现在经过纠正后,我发现这是在deps.edn
中build依赖项上的depstar
:aliases
{:depstar
{:replace-deps
{com.github.seancorfield/depstar {:mvn/version "2.1.303"}}
:ns-default hf.depstar
:exec-args {}}}
它依赖于log4j。
感谢大家的帮助。
编辑:格式化