Java 配置:JRebel+;外部JBoss+;日食+;基于蚂蚁的部署

Java 配置:JRebel+;外部JBoss+;日食+;基于蚂蚁的部署,java,eclipse,ant,jboss,jrebel,Java,Eclipse,Ant,Jboss,Jrebel,我正在尝试配置JRebel 开发环境描述: Eclipse朱诺IDE JBoss 6.0.1-从eclipse外部运行(同一台机器,非远程) 调试:远程,关闭所有热插拔功能 Ant脚本:编译、部署并将目标WAR提升到JBoss 我以前没有使用过JRebel,配置指南看起来很简单,但我在我的特殊情况下遇到了麻烦 所有源代码(包括JSP和图像)都在项目的bin文件夹中编译 Ant脚本创建了WAR,它分别保存JSP、样式、属性文件和编译后的应用程序类,并与库一起放在/web inf/lib/中的专

我正在尝试配置JRebel

开发环境描述:

  • Eclipse朱诺IDE
  • JBoss 6.0.1-从eclipse外部运行(同一台机器,非远程)
  • 调试:远程,关闭所有热插拔功能
  • Ant脚本:编译、部署并将目标WAR提升到JBoss
我以前没有使用过JRebel,配置指南看起来很简单,但我在我的特殊情况下遇到了麻烦

所有源代码(包括JSP和图像)都在项目的bin文件夹中编译

Ant脚本创建了WAR,它分别保存JSP、样式、属性文件和编译后的应用程序类,并与库一起放在/web inf/lib/中的专用jar中。脚本将生成的WAR提升到JBoss并运行服务器

我应该把我的rebel.xml放在哪里(我想应该放在我项目的bin文件夹中?!),我应该写些什么来让jrebel热交换部署在JBoss服务器中的war中jar内部的代码更改

我为JBoss运行脚本提供了必要的jrebel VM参数


非常感谢

rebel.xml应该在应用程序的WEB-INF/classes中结束。如果在WEB-INF/lib文件夹中有依赖项,那么每个归档文件都应该有自己的专用rebel.xml配置文件

若您使用EclipseWTP进行部署,那个么可以将其放入源文件夹中。但是如果您使用Ant构建战争,那么您必须确保Ant脚本将检测rebel.xml并将其复制到正确的位置


rebel.xml中的路径应该指向编译类所在的文件夹,即IDE编译这些类的位置。

嘿,我感谢你作为jrebel工程师在公共讨论中的个人贡献。那太好了;)我让它使用java类和属性文件(位于:即/WEB-INF/lib中)。但不幸的是,还没有使用jsp(位于/jsp中)。(两个不同的rebel.xml文件)JSP是web模块的一部分,我猜想它位于web-INF目录的某个地方,可能在某个子目录中?然后rebel.xml只需要让带有link标记的标记指向包含资源的目录,它应该与的target属性映射,该属性将根据您在应用程序中引用这些资源的方式映射资源。如果这对您不起作用,请咨询JRebel支持部门-这可能是一个与特定JBoss版本相关的bug。结构有点混乱。我会尽量精确:WAR本身有四个顶级目录——WEB-INF、META-INF、jsp和css。Java功能位于保存类的/WEB-INF/lib/中。所以,不,jsp不在WEB-INF目录中,而是在“jsp”文件夹的旁边。这与前面提到的jar非常相似,类不在WEB-INF/classes中,但在那里我可以通过将rebel.xml放入jar(而不是WEB-INF/classes)来配置它。我照原样买的,不是我设计的。我希望我的描述是清楚的,所以链接值应该只指向项目中jsp文件所在的目录。然而,link target属性值是从归档结构派生出来的-JP可能在您的项目工作区的WEB-INF文件夹之外,但我确信当您组装WARJSP时,它们会复制到WEB-INF中。无论是在我的项目中还是在组装的WAR中,我都会窥视WAR以确保它们在WEB-INF之外。也许我应该把rebel.xml放到WEB-INF中,并指向“./jsp/”这样的点?服务器启动时显示正在监视包含JSP的正确文件夹,但war内部未应用任何更改。