【发布时间】:2013-10-15 09:50:36
【问题描述】:
我们正在考虑从 Eclipse 切换到 IntelliJ IDEA。我们必须使用 JRebel,这样我们就不必每次更改一行代码时都重新启动应用程序。
每次我更改一个 .java 文件中的一行代码,并在该特定文件上调用 IntelliJ make 过程后,JRebel 似乎都会重新加载一大堆客户端类。
在 Eclipse 中,这种残酷的重新加载行为有时可能会发生,但在大多数情况下,类的重新加载过程要快得多!
我认为我遗漏了一些东西。 有使用 IntelliJ 和 JRebel 经验的人知道如何让 JRebel 插件在不需要更多内容时重新加载一个类吗?
任何帮助将不胜感激!
- 注 1:我知道超级开发模式会有所帮助,但我想拥有 JRebel 插件首先工作。
- 注意 2:VM arg
-Drebel.check_class_hash=true也有帮助,但我不认为该插件应该以这种方式工作。
【问题讨论】:
-
只是好奇,JRebel 与超级开发模式相比有什么优势? JRebel 有没有超级开发模式做不到的事情?
-
嗨,JRebel 家伙。我想你想让我说我为什么喜欢 JRebel 不是吗:)?我们正在编写一个具有复杂工作流程的大型企业应用程序。 JRebel 允许我们重新加载部分工作流,甚至是我所在的部分,而无需重新加载应用程序。否则这将迫使开发人员重新启动复杂的向导,即使有 Selenium 的帮助,这也是一种痛苦。从用户的角度来看,JRebel 以相同的方式处理客户端和服务器端代码。 Super Dev Mode 重新编译整个应用程序,而 JRebel 更快,因为它只重新编译几个文件(至少在 Eclipse 中)。
-
好吧,我的目标实际上是弄清楚我们是否愿意花时间添加对 GWT 的特殊支持,尽管有超级开发模式。如果超级开发模式适用于人们,我们就不会花时间在 GWT 集成上——很简单。顺便说一句,JRebel 确实会重新编译任何东西,它只使用编译器(javac,ejc)的结果并更新正在运行的应用程序中的类和资源。
标签: gwt intellij-idea jrebel