【发布时间】:2023-04-03 17:30:01
【问题描述】:
我正在尝试使用 Dropwizard(https://github.com/robertkuhar/dropwiz_get_start、https://github.com/robertkuhar/dropwiz_mongo_demo),并且对与我的 IDE 集成的轻松程度印象深刻。要启动我的 dropwizard 应用程序,我只需找到带有 main 方法和“Debug As...Java Application”的类,然后就可以了。停止应用程序同样简单,只需单击 Debug 视图中的红色“Terminate”按钮。但是,我注意到,当我以这种方式停止托管类的 stop() 方法时,我没有到达断点。
当 Dropwizard 直接在 Eclipse 的 Debugger 中运行时,如何让其正常关机?
@Override
public void run( BlogConfiguration configuration, Environment environment ) throws Exception {
...
MongoManaged mongoManaged = new MongoManaged( mongo );
environment.manage( mongoManaged );
...
}
MongoManage 的 stop() 中的断点永远不会被击中。
public class MongoManaged implements Managed {
private final MongoClient mongo;
public MongoManaged( MongoClient mongo ) {
this.mongo = mongo;
}
@Override
public void start() throws Exception {
}
@Override
public void stop() throws Exception {
if ( mongo != null ) {
mongo.close();
}
}
}
【问题讨论】:
-
这是如何被否决的?哎呀。艰难的人群。
标签: eclipse dropwizard