【发布时间】:2012-02-22 08:55:52
【问题描述】:
我有一个服务器应用程序和两个基于 Swing 的客户端应用程序。我们在 Eclipse 中开发它们,每个都有一个单独的项目。
许多课程是共享的。例如,my.server 包有一些用于服务器和客户端的类,而另一些只用于服务器。虽然我更喜欢将它们放在同一个包中,因为它们密切相关并且其中一些依赖于包的可见性,但我不想分发应用程序不需要的类,因为它不仅会增大文件大小,而且还会这将是一个安全风险。
目前,每个服务器和客户端都有相同的 jar,这是一团糟。理想情况下,我想根据依赖项自动创建 jars,如下所示。
服务器:
- server.jar:仅服务器使用的类
- server-client1-common.jar:Server 和 Client 1 共享的类
- server-client2-common.jar:Server 和 Client 2 共享的类
客户端 1:
- client1.jar:仅供客户端 1 使用的类
- server-client1-common.jar:Server 和 Client 1 共享的类
- client-common.jar:客户端 1 和客户端 2 共享的类,但服务器不共享
客户端 2:
- client2.jar:仅供客户端 2 使用的类
- server-client2-common.jar:Server 和 Client 2 共享的类
- client-common.jar:客户端 1 和客户端 2 共享的类,但服务器不共享
我知道您可以使用 ant 手动执行此操作,但这将是一场维护灾难。有没有工具可以自动处理这种依赖关系?
【问题讨论】:
-
如果您在构建过程中使用“maven”,请查看此讨论:stackoverflow.com/questions/2424015/…