1

我有两个 netbeans 项目,我需要将 2 个输出 jar 合并到一个“大”jar 中。问题是这两个项目共享很多类,这显然是一个问题。我已经在使用带有 zipgroupfileset 属性的 ANT,但它复制了所有类。有没有办法我可以从项目 1 中选择所有类然后从项目 2 中选择缺失的类?非常感谢您的帮助

编辑:我被迫有 2 个项目(有时我什至没有第二个项目,只有 jar)所以我觉得我不得不制作一个 ANT 脚本。奇怪的是没有像不要复制已经存在的类这样的属性

4

2 回答 2

1

重复代码容易出错。有几种方法可以解决这种重复。

  1. 项目依赖。让一个项目依赖于另一个项目的输出。
  2. 合并项目。如果您无论如何要创建一个 jar,这些项目可能是合并到单个项目中的候选者。您仍然可以通过模块管理代码分离。
  3. 两者都依赖的第三个项目。我们经常发现自己在所有项目中使用相同的 StringUtils 或类似的东西。您可以将 util/misc 代码提取到其他两个项目共享的另一个项目中,而不是在多个位置维护代码。
  4. 重命名类。如果由于某种原因这些类被命名为相同但不相同,那么您需要确定它们是否是应该以不同的命名空间/命名的两件事,或者您是否想要合并并维护 1 个副本。
于 2013-05-07T18:35:05.937 回答
0

Eclipse 为您制作。

您可以在 Eclipse 中创建一个新项目,在项目中导入您的 jars 并导出他。

当您选择 Export / Java / Runnable Jar 时,选中“Extract required libraries into generated jar”选项。每个 jar 只复制一份。

于 2013-05-07T18:34:13.030 回答