请在 2024 年 Clojure 状态调查!中分享您的想法。

欢迎!有关本站如何运作的更多信息,请参阅关于页面。

0
tools.build

你好,

我一直在尝试使用 tools.deps 构建 uberjar,并遇到了以下异常

Execution error (ZipException) at java.util.zip.ZipOutputStream/putNextEntry (ZipOutputStream.java:233).
duplicate entry: META-INF/MANIFEST.MF

这是因为在某个库中似乎提供了一个与 clojure.tools.build.api/uber 尝试添加到 uberjar 中的 META-INF/MANIFEST.MF 冲突。

我想这样的文件应该默认忽略,例如通过定义 clojure.tools.build.tasks.uber/uber-exclusions 如下所示

(def ^:private uber-exclusions
  [#"project.clj"
   #"META-INF/.*\.(?:SF|RSA|DSA|MF)"])

我没有访问 Clojure JIRA 的权限,但如果有人给我权限,我将很乐意提供一个包含此修复和特定 MANIFEST.MF 排除测试用例的简单补丁。

2 答案

0

已修复在 v0.1.3 中,谢谢。

0

depstar 提供了与 tools.buildjaruber 函数的替代品,可以处理合并 LICENSE 文件,大量其他排除项,合并 log4j2 插件缓存等。请参阅 https://github.com/seancorfield/depstar/blob/develop/src/hf/depstar/api.clj

目前,在下一版本发布前我会重构所有文档,所以你只能通过:git/url依赖HEAD。如果您愿意尝试,我很乐意收到您的反馈。

请参阅示例 https://github.com/seancorfield/depstar/blob/develop/build.clj,其中包含使用depstar版本的jarubertools.build示例。

by
by
即便您已经发布了新版本,我也可以证实depstar在构建我的项目uberjar时按预期工作。
by
知道了这个很好,谢谢!
...