java - “热代码替换”不起作用——Eclipse 不会更改 JBoss 上的任何代码

标签 java eclipse jboss remote-debugging hotswap

我目前遇到“热代码替换”无法在 Eclipse Galileo 和 JBoss 4.2.3 上运行的问题。

在其他应用程序中,我正在本地 JBoss 上运行分解的 Java WAR。构建它的项目由 Maven 管理。我使用 Maven 目标 war:exploded 构建项目,然后使用 ANT 脚本将该目录复制到 JBoss。

当我现在运行应用程序并在代码中的任意位置设置断点时,Eclipse 会在 Debug模式下正确地停在该行。 但是当我对源文件进行更改并保存时,Eclipse 不会将此更改应用到 JBoss。 例如,当我将普通代码行添加到注释中时,调试器仍然会跳过该注释,就好像它是普通的 Java 代码一样。或者当我删除一行时,调试器似乎与文件不同步并开始跳过括号。

但我也没有收到任何“热代码替换错误”消息。在我看来,Eclipse 将更改应用于源文件,但并未将其应用于 JBoss。

是否有任何必须打开的特殊首选项才能使热代码替换工作?或者我在构建应用程序并将其部署到 JBoss 的过程中是否存在任何错误?

最佳答案

我没有使用 JBoss,但我有两个建议。

  1. 如果您使用启动配置在 eclipse 中运行您的应用程序

    您的“项目”-“自动构建”标志是否启用? 如果不是,则代码不会被编译并在运行时被忽略。

  2. 在远程模式下调试应用程序时,您不能更改代码,但可以更改参数值。 (我认为)

关于java - “热代码替换”不起作用——Eclipse 不会更改 JBoss 上的任何代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2673554/

相关文章:

java - 无法使用JBOSS 7运行/调试Intellij

jakarta-ee - 吉/JBoss : Accessing application server parameters during runtime

java - 如何为传感器创建按钮

java - 俄罗斯方 block 旋转算法不起作用

java - 我应该使用返回值的方法,然后在 main 中打印返回值,还是只在方法中包含打印语句?

java - 在每个交易结束时解除对环境的锁定

c - 这个 GCC 错误 "... relocation truncated to fit..."是什么意思?

android - 单击放大 ImageView

ruby-on-rails - 如何将 rvm 与 eclipse 的设置绑定(bind)

Apache、mod_jk 和 JBoss 负载平衡问题