0

我有一个命令行应用程序,我需要从另一个 jar 文件中引用它,我不想做的是将现有代码复制并粘贴到包含另一个应用程序源文件的项目中,因为这种方法会导致可维护性问题。

我考虑过执行以下操作:

  1. 部署2个jar文件;将命令行应用程序作为进程运行(这种方法的问题是我不想处理孤立进程)。

  2. 部署2个jar文件;使用反射调用命令行应用程序的主要方法。(我不确定这是一个好主意)。

  3. 以某种方式引用包含命令行应用程序源代码的项目,并编写一个 ant 文件,将类文件复制到其他应用程序的 jar 文件中。

哪种方法最有意义?如果答案是 #3,我究竟需要如何设置 eclipse 项目和/或编写 ant 文件,以便我需要的类文件包含在新的 jar 文件中?

4

1 回答 1

0

在我看来,我更倾向于方法一。

假设您的命令行应用程序是 Jar1,而引用的第 3 方 jar 是 JAR2。只需将 JAR2 添加到类路径即可。就是这样。您可以从 Jar1 调用所有需要的类。由于它是一个命令行应用程序并且您不想处理孤儿进程,因此处理它的理想方法是,您应该从命令行应用程序处理它以杀死孤儿进程,类似于您在 finally 块中所做的事情尝试捕捉。

我对您的方法 2 迷失了方向,因为反射非常不鼓励/过时,因为在出​​现任何问题时很难调试

于 2013-02-18T06:08:08.620 回答