我通常会采用精心设计的日志记录配置。但是现在我想在Eclipse(Photon)中调试ActiveMQ(5.15.5)代理组件的一部分。下载,构建并运行mvn eclipse:eclipse之后,我现在有了一个充满组件项目的工作区,没有相关的运行配置。出于某种原因,mvn installactivemq-assembly/src/release/bin中生成了一个可执行文件,但这似乎是有限的,而且并不明显,我必须告诉eclipse运行。

我以前也有类似的问题。
总的来说:我是否只猜出一个Main(有很多)并反复试验搜索?还是可以采用结构化的方法来调试此类松耦合的应用程序?

最佳答案

我建议使用任何现代Java IDE(例如Eclipse,IDEA等)都可以使用的远程调试。按着这些次序:


抓住与您正在运行的代理版本相对应的ActiveMQ source code
打开ActiveMQ实例的env目录中的bin文件,然后取消注释定义ACTIVEMQ_DEBUG_OPTS的行。
在ActiveMQ代码中用您的IDE设置一个断点。
启动代理。
附加调试器。
重现您的问题并从您设置的断点调试代码。

关于java - 如何调试大型的面向插件的Java项目,例如Eclipse中的ActiveMQ(非Artemis)?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52274591/

10-13 03:41