我将服务器和客户端代码保存在Eclipse的同一个项目中。包括两者的图书馆。客户端的图像也会添加到构建路径中。
现在我想为服务器和客户端生成jar,它们只包含必需的库,而服务器jar没有包含图像。
有没有办法在没有maven等的情况下做到这一点?
答案 0 :(得分:2)
右键单击该项目,然后转到“导出”。从选择树中选择jar,然后在下一个选项卡中,删除不希望包含在jar中的代码/资源。更好的是,如果将它们保存在单独的项目中(即使没有客户端Java代码,也可以创建资源项目)。
但是,您所描述的内容听起来很像WAR文件。与jar相反,WAR文件是可部署的jar,旨在添加到Tomcat等Web托管应用程序中。我不知道这是否适合您的需求,但通常情况下,您希望将服务器和客户端代码放在一起。如果您的项目依赖于另一个项目,该项目将自动创建一个将包含在WAR中的jar。
答案 1 :(得分:1)
您可以将源分为同一项目中的三个源(和输出)文件夹:
然后创建一个build.xml
(Ant构建文件),它从bin-shared
+ bin-server
创建一个jar,从bin-shared
+ bin-client
创建一个jar。
注意:将它保留在同一个项目中的一个危险是,您可能会意外地使用来自服务器类的客户端类,反之亦然,这会在运行时失败。要解决此问题,请创建三个项目而不是三个源文件夹。