• Eclipse中使用JRebel实现项目热部署(Maven插件版)


    JRebel实现项目热部署(Maven插件版)

    热部署就是在应用运行过程中不进行重启,可直接进行软件升级。

    在开发过程中,热部署就是在项目运行过程中变更代码,无需重启服务器即可使代码生效。

    tomcat可以进行项目热部署,但类中添加方法或方法名改动时则无法热部署,需要重启服务器导致浪费大量开发时间在等待项目重启上,通过JRebel可实现绝大部分项目代码改动都进行热部署

    在安装JRebel插件前建议先把Maven jar包中央仓库的下载地址(默认下载地址是国外的,下载速度比较慢)换成国内的,这里推荐设置成阿里的中央仓库。

    Maven中央仓库下载地址更换步骤:

    ①更改Maven配置文件

    ②设置Maven配置文件到Eclipse

    1.找到本地Maven安装路径,打开本地Maven安装路径下的conf/Settings.xml

     

    2.<mirrors></mirrors>标签内添加以下镜像参数并保存:

    <mirror>
        <id>alimaven</id>
        <name>aliyun maven</name>
        <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
        <mirrorOf>central</mirrorOf>        
    </mirror>

    3.打开Eclipse-->Window-->Preferences,找到Maven下的User Settings:

     

    -------------------------------------------------步骤结束-------------------------------------------------------------

    Eclipse中安装JRebel插件

     

    等待安装完成后,在弹出的是否重启Eclipse对话框点击确定,等待自动重启Eclipse,插件安装完成。

    插件激活请参考:https://blog.csdn.net/lawsonjin/article/details/76422807

    -------------------------------------------------步骤结束--------------------------------------------------

    本人开发时运行项目使用的tomcat是Maventomcat插件,因此需要添加Maven的tomcat插件,通过Maventomcat插件运行项目想要使用JRebel需要添加MavenJRebel插件。

    Maventomcat插件配合JRebel的设置步骤:

    1.pom.xml<build></build>标签下的<plugins>标签里添加tomcat插件以及jrebel插件:

     

    以下是插件代码:

    <!-- maven的tomcat组件,通过maven命令tomcat7:run运行项目 -->
    <plugin>
      <groupId>org.apache.tomcat.maven</groupId>
      <artifactId>tomcat7-maven-plugin</artifactId>
      <version>2.2</version>
      <configuration>
        <port>8080</port>
        <path>/Irritability</path>
      </configuration>
    </plugin>
    
    <!-- jrebel热部署插件 -->
    <plugin>
      <groupId>org.zeroturnaround</groupId>
      <artifactId>jrebel-maven-plugin</artifactId>
      <version>1.1.8</version>
      <executions>
        <execution>
        <id>generate-rebel-xml</id>
        <phase>process-resources</phase>
        <goals>
          <goal>generate</goal>
        </goals>
        </execution>
      </executions>
    </plugin>

    2.选中项目,点击右键-->JRebel-->Enable JRebel会在项目的src/main/resources目录下自动生成rebel.xml配置文件:

     

    3.选中项目点击右键-->Run As-->Maven build...:

     

    按照图中步骤设置后点击Run按钮运行项目:

     

    运行结果:如下图说明JRebel插件启动成功,随后tomcat也开始启动:

     

    启动完成后对项目内的某个方法进行更名等操作后保存代码,JRebel就会自动检测到代码变更,并重新编译更改了代码的文件,控制台打印信息:

    补充:本人在完成JRebel安装后运行项目正常启动,但点击请求时出现

    Exception in thread ""http-bio-80"exec-1" java.lang.OutOfMemoryError: PermGen s

    的异常(内存溢出)。

    内存溢出解决方法是扩大设置的内存,步骤如下:

    Windows-->Preferences-->Java-->Installed JREs右侧-->Edit...

    Default VM arguments中写入

    -Xms512M -Xmx1024M -XX:PermSize=256m -XX:MaxPermSize=768m

    ,随后重启项目即可正常使用JRebel热部署项目了。

  • 相关阅读:
    Educational Codeforces Round 86 (Rated for Div. 2) D. Multiple Testcases
    Educational Codeforces Round 86 (Rated for Div. 2) C. Yet Another Counting Problem
    HDU
    HDU
    HDU
    HDU
    Good Bye 2019 C. Make Good (异或的使用)
    Educational Codeforces Round 78 (Rated for Div. 2) C. Berry Jam
    codeforces 909C. Python Indentation
    codeforces1054 C. Candies Distribution
  • 原文地址:https://www.cnblogs.com/new-life/p/9265530.html
Copyright © 2020-2023  润新知