我现有的项目之一遇到问题,我自己无法解决。
我的工作区包含 2 个项目,我正在开发的 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(每个项目一个)或 2 倍解析器,否则,我的 BuildPath 中有一个 Cycle。 (Logger 依赖于 XMLParser,XMLParser 依赖于来自 com.######.se.logger.rvctesting 的 Node.java)
但我想避免这种情况,因为这非常多余,当然也很难维护。另一种解决方案是将两个项目合并为一个项目。但维护起来就更困难了,而且两个项目都不再独立了。
我知道这个描述实在难以想象。有谁知道如何更改项目设置以符合我的要求?
最佳答案
您可以使用 Logger
中的类的接口(interface)并创建第三个项目Logger-api
您可以放置它们的地方。您的两个项目都应该依赖于该项目。这边Logger
可以依赖XML
和Logger-api
和XML
可以依赖Logger-api
仅有的。
关于java - 如何避免 BuildPath 中的循环(特定项目设置),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20527127/