Gradle:热部署更改为依赖项

时间:2014-06-19 16:44:01

标签: java spring-mvc gradle jrebel hotdeploy

我有一个环境,我有一个java(spring mvc)webapp由intellij上的n成员团队开发,gradle作为构建代理。该项目具有依赖性,该依赖性也由同一团队开发。依赖项将发布到存储库,spring mvc app将从该存储库读取该依赖项。发生的情况是每次对依赖关系代码进行更改时,必须刷新spring应用程序代码以包含最新版本的依赖关系代码。所以,问题是有没有办法在运行时在依赖代码中进行代码交换,并使它在调试会话中生效,就像JRebel所做的那样,除非它需要在依赖代码中执行它。 / p>

对此的任何意见都将受到高度赞赏。

P.S-我标记了gradle和jrebel,因为可能有办法通过这个技术堆栈实现这一目标。

1 个答案:

答案 0 :(得分:1)

JRebel可以监控罐子,虽然它不是超级高效的。在rebel.xml配置文件中,您可以指定一个<jar>标记,指向文件系统中依赖项的位置。

更好的方法是实际使用源代码,以便使用rebel.xml部署依赖关系,指向编译类所在的位置,然后使用依赖关系来处理源代码,执行pull /在需要时从版本控制更新并编译更改。如果你的编译器是增量的,那么它只会编译已更改的类,而JRebel不必一次重新加载太多的类,而只需要重新加载。