美文网首页
若依框架springBoot-搭建和部署

若依框架springBoot-搭建和部署

作者: Raral | 来源:发表于2021-01-21 08:26 被阅读0次

    若依框架-初始化模板

    环境部署

    1. 准备工作
    JDK >= 1.8 (推荐1.8版本)
    Mysql >= 5.7.0 (推荐5.7版本)
    Maven >= 3.0
    
    1. 运行项目

      1. 前往Gitee下载页面(https://gitee.com/y_project/RuoYi (opens new window))下载解压到工作目录
      2. 导入到Eclipse,菜单 File -> Import,然后选择 Maven -> Existing Maven Projects,点击 Next> 按钮,选择工作目录,然后点击 Finish 按钮,即可成功导入。
        Eclipse会自动加载Maven依赖包,初次加载会比较慢(根据自身网络情况而定)
      3. 创建数据库ry并导入数据脚本ry_2021xxxx.sql,quartz.sql
      4. 打开项目运行com.ruoyi.RuoYiApplication.java,出现如下图表示启动成功。
      5. 打开浏览器,输入:(http://localhost:80 (opens new window)) (默认账户/密码 admin/admin123)
        若能正确展示登录页面,并能成功登录,菜单及页面展示正常,则表明环境搭建成功

      建议使用Git克隆,因为克隆的方式可以和RuoYi随时保持更新同步。使用Git命令克隆

    2. 运行成功

      微信图片_20210120181752.png
      注意:
      我们可能导入quartz.sql会报错?
      1071 - Specified key was too long; max key length is 767 bytes 1709 - Index column size too large. The maximum column size is 767 bytes.?
      解决方法
      https://gitee.com/y_project/RuoYi-Vue/issues/I1O1M8

    改造框架

    1. 区分接口

    2. 更换项目包路径
      使用 module 重命名

    ├── xxxxx
    │       └── xxxxx-admin
    │       └── xxxxx-common
    │       └── xxxxx-framework
    │       └── xxxxx-generator
    │       └── xxxxx-quartz
    │       └── xxxxx-system
    │       └── pom.xml
    
    1. 更换顶级目录的pom.xml
    <modules>
        <module>xxxx-admin</module>
        <module>xxxx-framework</module>
        <module>xxxx-system</module>
        <module>xxxx-quartz</module>
        <module>xxxx-generator</module>
        <module>xxxx-common</module>
    </modules>
    
    1. 更换项目所有包名称 com.ruoyi.xxx 换成com.yyy.xxx

    2. 更换application.yml指定要扫描的Mapper类的包的路径typeAliasesPackage包路径名称替换com.xxxxx

    # MyBatis
    mybatis:
        # 搜索指定包别名
        typeAliasesPackage: com.你的包名.**.domain
    
    1. 更换mapper文件的namespace包路径

    2. 更换pom文件内容
      以下pom.xml文件中包含ruoyi的关键字替换成xxxxx

    ├── xxxxx
    │       └── xxxxx-admin      pom.xml
    │       └── xxxxx-common     pom.xml
    │       └── xxxxx-framework  pom.xml
    │       └── xxxxx-generator  pom.xml
    │       └── xxxxx-quartz     pom.xml
    │       └── xxxxx-system     pom.xml
    │       └── pom.xml
    

    以上操作完正常情况下 项目包路径都已经更改完毕 重启项目就OK

    进一步改造模板

    1. 控制台日志 变颜色
      修改logback.xml文件
           <!-- 日志输出格式 -->
      <property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n" />
      <property name="log.color.pattern" value="%red(%d{yyyy-MM-dd HH:mm:ss}) %green([%thread]) %highlight(%-5level) %boldMagenta(%logger{10}) - %cyan(%msg%n)"></property>
      <!-- 控制台输出 -->
      <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
          <encoder>
              <pattern>${log.color.pattern}</pattern>
          </encoder>
      </appender>
      
    2. 咋样配置项目切换环境
    • 在 xxx-admin 的 pom.xml文件 配置 profiles
     <profiles>
    
            <profile>
                <!-- 生产环境 -->
                <id>prod</id>
                <properties>
                    <profileActive>prod</profileActive>
                </properties>
                <activation>
                    <activeByDefault>false</activeByDefault>
                </activation>
            </profile>
    
            <profile>
                <!-- 本地开发环境 -->
                <id>dev</id>
                <properties>
                    <profileActive>dev</profileActive>
                </properties>
                <activation>
                    <activeByDefault>true</activeByDefault>
                </activation>
            </profile>
            <profile>
                <!-- 测试环境 -->
                <id>test</id>
                <properties>
                    <profileActive>test</profileActive>
                </properties>
                <activation>
                    <activeByDefault>false</activeByDefault>
                </activation>
            </profile>
        </profiles>
    
    
    • 在 在 xxx-admin 的 application.yml 配置 profiles(动态切换)
    spring:
        profiles: 
            active: @profileActive@
    

    如果报错 在 xxx-admin 的 pom.xml文件

    <build>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <!--开启过滤,用指定的参数替换directory下的文件中的参数-->
                <filtering>true</filtering>
            </resource>
        </resources>
    </build>
    

    [参考文献](https://blog.csdn.net/mengjie0617/article/details/110122080
    https://www.icode9.com/content-4-510466.html)

    1611137825(1).png
    1. 配置日志

    部署流程

    部署方式:

    • SpringBoot Jar包部署方式
    • 依赖jar包和静态资源文件分离

    流程:

    1. cd 进入项目根目录,属于以下mvn命令进行打包。

      打包测试环境

       mvn clean package  -Ptest -Dmaven.test.skip=true
      

      打包生产环境

       mvn clean package  -Pdis -Dmaven.test.skip=true
      

      打包过后进入xxxx-admin文件夹内target目录,可以看到目录内有 lib,resource两个文件夹 以及xxxx-admin.jar。

      • lib目录中均为依赖所需的jar包,第一次上传需要将整体上传到服务器项目所在地lib目录中,后期迭代之后只需要将增加的依赖包拷贝进入就行,需要更新项目xxxx-common,xxxx-system,xxxx-framework,xxxx-quartz等目录时,只需要将相关文件夹中target目录的jar包拷贝进去替换即可。
      • resources目录中均为xxxx-admin中的静态资源文件,将此文件夹拷贝到服务器项目部署相同目录中即可,迭代升级替换相关文件即可。
    2. 上传到服务器之后,在xxxx-admin.jar同类文件中,按照以下命令进行

      nohup java -jar -Dloader.path=.,resources,lib xxxx-admin.jar >temp.txt &
      

    查看运行情况:

    ps -ef|grep 'java -jar'
    
    ``` 暂时不用这种服务类型的
    service xxxx-admin stop
    ```
    ```
    rm -rf /etc/init.d/xxxx-admin
    ```
    ```
    ln -s /usr/local/api/project/xxxx-admin.jar /etc/init.d/xxxx-admin
    ```
    ```
    chmod +x /usr/local/api/project/xxxx-admin.jar
    ```
    ```
    service xxxx-admin start
    ```
    

    参考
    若依手册

    相关文章

      网友评论

          本文标题:若依框架springBoot-搭建和部署

          本文链接:https://www.haomeiwen.com/subject/fnakzktx.html