用Clojure写Nutch的插件,打包时遇到一个问题:由于依赖于nutch和hadoop-core的jar,最后用uberjar打包大小为30多M,如果去了这两个以及依赖的包,可以裁剪到6M。因为最终运行环境中已经包含了这两个包,所以实在是多余。
解决的办法:在project.clj中添加一个provided的profiles, 具体如下
:profiles {:dev {:dependencies [[midje "1.6.2"]]}
:provided {:dependencies [[org.apache.nutch/nutch "1.7"]
[org.apache.hadoop/hadoop-core "1.2.0"]]}