我知道可以使用 创建一个战争文件lein ring war
,但它似乎仍然包含码头依赖项。当我构建战争(并在tomcat上部署)时,有没有办法排除码头依赖关系?
如果我根本无法做到这一点,或者只是打包到战争中但从未实际使用过的额外 jars/class 文件?
Leinigen 在依赖项中支持 :exclusions。
(defproject my-project "1.0.0"
:dependencies [[org.clojure/clojure "1.2.0"]
[org.clojure/clojure-contrib "1.2.0"]]
:dev-dependencies [[autodoc "0.7.1" :exclusions [org.apache.ant/ant]]])
有关详细信息,请参见此处。
通常,问题在于找出依赖项的来源。在 Maven 中,您可以这样做:
mvn dependency:tree
获得依赖树的有用的 ASCII 艺术表示。
一种选择是使用为您的项目生成 pom.xml
lein pom
然后在上面运行 maven。