[英]Java Debugging Deployed Glassfish @PostConstruct Unable to Debug
我可以在NetBeans中调试Java应用程序,并在NetBeans中调试其他项目。 但是,在Glassfish中部署Singleton并在@PostConstruct批注上设置断点时,我无法调试。 我已将目标服务器设置为在其上进行调试,并且已设置了调试器应在其中进行调试的断点,并以调试模式启动了服务器。 但是,我仍然无法在NetBeans中进行调试。 下面是代码:
@Startup
@Singleton
public class Listener {
@PostConstruct
public void init() {
System.out.println("init");
}
}
我在System.out.println(“ init”)语句上设置断点。 我遵循的步骤是:
1)构建Jar文件2)启动Glassfish服务器3)部署Jar文件4)以Debug模式启动服务器5)NetBeans的控制台中打印了“ init”,但是我无法调试。
我尝试在许多不同的端口上附加调试器,但是连接被拒绝或无法调试。
我正在使用NetBeans 1.7.2。 我已经尝试过与其他版本的NetBeans进行相同的操作,但是仍然存在相同的问题。
上面只是一个示例代码,但是还有更多代码,但是我无法调试。 我在Google上找不到任何解决方案。
你可以试试看吗?
你必须:
@PostConstruct在部署期间被调用,因此您提供的步骤顺序不正确,因为在附加到调试器之前会调用代码。
您是否用Eclipse尝试过? 我记得,在Eclipse中调试@PostConstruct方法没有问题。
更多值得一提的是:-只要您的应用程序在服务器上存在,@ Singleton bean就会存在...因此,如果要调试其@PostConstruct,我建议您打开glassfish服务器控制台,并使用来自控制台...直到此为止,@ PostConstruct不会被调用,因为bean是容器管理的...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.