联系
Knight's Tale » 技术

IntelliJ热部署 Java Maven代码

2014-12-17 14:49

Eclipse下写java还是可以的,但是处理XML啊,js,python 啊ecipse弱爆了啊。 作为一个全能性选手。。。这样是不能完全 愉快的玩耍的。

因此,最近又重新要返回 IntelJ了。 自从玩PyCharm非常爽之后,上手IntelJ 终于会比较习惯些。

需要注意以下几点:

  1. InTeliJ的java与Eclipse的Java貌似有些不一样(当然是InteilJ比较标准),因此,有些类在eclipse跑得通,但是在 InteliJ 下跑不通。解决办法就是 使用高版本的 JDK
  2. 在使用Maven的情况下,如果base pom是在最外层的,那么可以使用类似这样的代码结构

http://img2.jintiankansha.me/get5?src=http://ww3.sinaimg.cn/bmiddle/60c9620fgw1enco6z3b4xj20by09cdgz.jpg

但是如果不是在最外层的,代码结构就只能是打平了:

http://img2.jintiankansha.me/get5?src=http://ww1.sinaimg.cn/bmiddle/60c9620fgw1enco7w08ewj20bq04i75o.jpg

如何实现热部署?

所谓热部署,我想实现以下功能:

前提:多个maven项目相互依赖。

  1. 当最底层的maven项目代码更改后,不需要层层重新打jar包。
  2. 当最底层的maven项目代码更改后,不需要重新启动主web程序。

网上看了很多关于 Jrebel的文章,据说可以实现热部署,如:

  • http://wenku.baidu.com/view/583ef78d83d049649b665832.html
  • http://blog.csdn.net/sensisoft/article/details/20010615?reload
  • http://manuals.zeroturnaround.com/jrebel/standalone/config.html#maven
  • http://manuals.zeroturnaround.com/jrebel/standalone/config.html#maven
  • http://stackoverflow.com/questions/6095151/can-jrebel-redeploy-changes-in-maven-dependencies
  • http://zeroturnaround.com/blog/jrebel-how-to-setting-up-multi-module-projects-in-intellij-idea/

还熬夜去安装破解版。。。。

最后发现还是不能热部署啊。内流满面啊。。

最后还是我以前的旧文章靠谱啊 http://www.liaoqiqi.com/post/185

使用 Jetty 插件 (不是maven jetty)就可以实现热部署。

如果更改了某个java代码,使用 ctrl + shift + F9 来 class reload.

或者使用 ctrl + F9 来 project reload

用起来非常棒!

http://img2.jintiankansha.me/get5?src=http://ww1.sinaimg.cn/mw1024/60c9620fgw1encntjwubbj20yd0bt77v.jpg