我有一个问题,在我现有的一个项目,我不能自己解决。
我的工作区包含两个项目,我正在工作的MainTool (Logger)和第二个工具(XMLParser),它们都需要独立维护、编译和运行。
项目日志:com.######.se.logger
项目XML:com.######.se.xml
现在问题来了:
XMLParser读取文件,并创建com.######.se.**LOGGER**.rvctesting.Node类型的对象。
LogTool将这些节点如下所示:
//This works cause I added XMLParser to BuildPath from Logger
XMLParser p = new XMLParser();
p.parseXML(path);
List<Node> list = p.getNodeList();问题是,我要么需要2次Node.java (在每个项目1中),要么需要2次解析器原因,否则,我的BuildPath中就有一个循环。(记录器依赖于XMLParser,而XMLParser依赖于来自com.######.se.logger.rvctesting的Node.java )
但我想避免这种情况,因为这将是相当多余的,当然也很难维持。另一个解决方案是将两个项目合并到一个项目中。但这样的话,维护起来就更加困难了,而且这两个项目都不再独立了。
我知道这种描述是无法想象的。有没有人知道如何更改项目设置,使其符合我的要求?
发布于 2013-12-11 19:04:29
您可以为Logger中的类使用接口,并创建第三个项目Logger-api,您可以在那里放置它们。您的两个项目都应该依赖于这个项目。这样,Logger就可以依赖于XML和Logger-api,而XML只能依赖于Logger-api。
发布于 2013-12-11 19:03:43
解决方案是创建第三个库项目,原始项目都依赖于这个项目,并产生一个jar以供使用。
像maven这样的构建基础结构是这种依赖管理的理想选择。每个IDE,也有eclipse插件,一个很好的集成。
它使代码重用变得很有趣。
https://stackoverflow.com/questions/20527127
复制相似问题