Java 如何在调试模式下启动james服务?

Java 如何在调试模式下启动james服务?,java,james,Java,James,我正在运行james作为窗口服务。我已经将我的mailet放在config.file中,这将进一步调用我的特定于应用程序的libs。现在,我想在收到邮件后调试应用程序中的某些类。我不知道如何在调试模式下启动james窗口服务,以便从eclipse连接到同一端口并开始调试 还有一件事是,当我将james服务器作为窗口服务启动时,它工作正常,但一旦使用james.bat文件启动它,它就会给出一些与我的应用程序相关的错误。看来要从詹姆斯手中夺走詹姆斯。巴特出局了。请提供我如何在调试模式下启动james

我正在运行james作为窗口服务。我已经将我的mailet放在config.file中,这将进一步调用我的特定于应用程序的libs。现在,我想在收到邮件后调试应用程序中的某些类。我不知道如何在调试模式下启动james窗口服务,以便从eclipse连接到同一端口并开始调试


还有一件事是,当我将james服务器作为窗口服务启动时,它工作正常,但一旦使用james.bat文件启动它,它就会给出一些与我的应用程序相关的错误。看来要从詹姆斯手中夺走詹姆斯。巴特出局了。请提供我如何在调试模式下启动james服务的输入。james版本是2.3.2

james不支持在调试模式下启动,所以您必须自己在调试模式下启动它。 对于james3(beta版)来说,这很简单,我假设您也可以在版本2.3.2中使用此解决方案

  • 首先在
    JAMES\bin
    目录中创建
    rundebug.bat
    文件,其中包含以下内容:

    设置JAVA_OPTS=-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8000

    跑吧,蝙蝠

  • 从命令行运行它。James服务器现在可以进行远程调试了

  • 在Eclipse中,使用默认配置在调试配置对话框中创建一个新的“远程Java应用程序”。在“项目”字段中,选择包含要调试的邮件集的项目

  • 放置断点并运行配置


  • 祝你好运

    James不支持在调试模式下启动,所以您必须自己在调试模式下启动它。 对于james3(beta版)来说,这很简单,我假设您也可以在版本2.3.2中使用此解决方案

  • 首先在
    JAMES\bin
    目录中创建
    rundebug.bat
    文件,其中包含以下内容:

    设置JAVA_OPTS=-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8000

    跑吧,蝙蝠

  • 从命令行运行它。James服务器现在可以进行远程调试了

  • 在Eclipse中,使用默认配置在调试配置对话框中创建一个新的“远程Java应用程序”。在“项目”字段中,选择包含要调试的邮件集的项目

  • 放置断点并运行配置


  • 祝你好运

    您应该取消JAMES_HOME/bin/run.bat中以下行的注释,以启用远程调试:


    您应该取消JAMES_HOME/bin/run.bat中以下行的注释,以启用远程调试:

    rem set DEBUG=-Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=y
    
    set DEBUG=-Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=y