# 说明

本文主要介绍如何通过 EOS、IntelliJ IDEA 或 Eclipse 开发平台搭建 DevOps 后端开发环境的相关内容。

本文中所用到的所有介质均可从以下介质库中获取:

  • 介质地址:ftp://10.15.15.162/application/DEVOPS/DevOps-dev/,账号:devops_r,密码:wn_4oVR4
  • 后端相关介质所在目录:server/

数据实体SDO开发说明

有关 EOS SDO 数据实体的开发,只能在 EOS 开发平台中进行,IntelliJ IDEA 和 Eclipse 目前不支持 EOS SDO 数据实体的开发。

若在 IntelliJ IDEA 或 Eclipse 的开发过程中,遇到涉及数据实体的修改时,需先切换至 EOS 进行开发,待完成后需重新打 War 包并将其解压到 IntelliJ IDEA 或 Eclipse 开发环境的devops-boot-dev/target/devops目录中。


# EOS开发平台

# 安装普元 EOS 开发平台

  1. 下载文件,文件路径:server/devops-ide.zip
  2. 解压文件到任意文件夹,打开文件devops-ide/configuration/eos_studio_config/server.xml,修改如下信息:

<installPath>Tomcat所在根目录</installPath>

<externalConfigDir>外置目录存储位置</externalConfigDir>

tomcat-server-xml-configuration

为了方便说明,本文中将Tomcat所在根目录设置为E:/primeton/devops/apache-tomcat-8.5.73,外置目录存储位置设置为E:/primeton/devops/apache-tomcat-8.5.73/apps_config

# 配置开发环境

  1. 启动IDE

  2. 安装 JDK1.8,下载 server/jdk-8u181-windows-x64.exe 并执行安装

  3. 配置 JDK 环境

    打开窗口-首选项-Java-编译器,修改相关配置如下:

    ide-compiler-java-version-configuration

    打开窗口-首选项-Java-已安装的JRE,修改相关配置如下并选中 JDK1.8 安装路径下的 jre 路径:

    ide-jre-configuration

  4. 配置 Maven,下载离线库:server/m2repo.zip并解压,下载 Maven Settings文件:server/settings.xml

    修改 Settings 文件,并将 localRepository 改为自己的本地路径。

    配置 Maven-User Settings 文件,选中修改后的文件,会自动加载已经修改过的 localRepository 路径。(这个路径会存放应用编译的依赖)

    ide-maven-settings-configuration

# 配置应用运行环境

  1. 下载并导入应用代码(http://euler.git.primeton.com/devops/devops.git)。打开studio-文件-导入-General-现有项目到工作空间中,导入所有代码

    ide-import-devops-source-code

  2. 部署应用并清理。下载代码对应的应用war包(devops.war)解压到Tomcat应用目录下(使用根目录E:\primeton\devops\apache-tomcat-8.5.73\webapps\ROOT),执行studio-项目-清理

  3. 运行应用,停止。查看自动生成的外置目录(配置目录,存放数据库配置,license等)

    目录路径为E:/primeton/devops/apache-tomcat-8.5.73/apps_config目录。

    每个应用对应一个外置目录,和 Tomcat 下应用目录一一对应,这里 DevOps 对应的目录为 ROOT

    ide-application-run-and-stop

  4. 拷贝修改运行配置文件和jar包

    license文件:server/config/primetonlicense.xml 拷贝覆盖到外置目录E:\primeton\devops\apache-tomcat-8.5.73\apps_config\ROOT\license

    数据库配置:修改E:\primeton\devops\apache-tomcat-8.5.73\apps_config\ROOT\config\user-config.xml配置,具体如下:

    user-config

    jar包依赖:下载server/config/c3p0-0.9.0.jar 文件并拷贝到 E:\primeton\devops\apache-tomcat-8.5.73\lib

  5. 再次启动应用即可通过 127.0.0.1:8080 访问(代码文件会自动更新到 Tomcat 中,war包中默认带有前端)


# IntelliJ IDEA开发平台

# 导入 DevOps 项目

回到 IDEA 主界面,点击Open按钮(旧版本应为Import),选中 DevOps 代码根目录后点击 OK,并以 Maven project 的形式导入项目。

idea-import-project-1

idea-import-project-2

# 配置 Maven 以及 JDK 环境

  1. 点击进入 File -> Settings -> Build, Execution, Deployment -> Build Tools -> Maven 页面,配置项目 Maven Home 等信息

    maven-info

  2. 点击进入 File -> Project Structure -> Project 页面,并配置项目 SDK

    jdk-info

# 子模块信息配置

  1. 找到devops-boot-devdevops-dailybuild/backend子模块下的pom.xml文件,鼠标右键点击pom.xml文件后,选中并点击Add as Maven Project按钮将对应模块以及其相关子模块加入到 IDEA 的 Maven 项目列表中

    add-as-maven-module

  2. 配置模块构建输出路径,即.class等文件输出的位置

    依次点击 File -> Project Structure -> Project Settings -> Modules -> 选中任意模块 -> Paths -> 勾选Use module compile output path并配置Output Path信息。

    注意

    模块编译输出结果存放位置必须位于对应模块的target/classes/com.primeton.devops.${模块名称}路径下。

    比如 devops-ci 模块的 Output Path 为 ${代码根目录}\devops-ci\target\classes\com.primeton.devops.ci,

    devops-integration-wecom 模块的 Output Path 为 ${代码根目录}\devops-ci\target\classes\com.primeton.devops.integration.wecom

# 代码编译

  1. 在进行编译之前,先将devops-dailybuild/backend/pom.xml下的 <module>../swagger</module>注释掉

  2. 打开 IDEA 右侧的 Maven 视图,依次编译devops-backenddevops-boot-dev模块

    module-compile

    如果在编译devops-boot-dev模块报找不到devops-specsdevops-bootstrap模块的异常时,需对devopsdevops-specs以及devops-bootstrap这几个模块执行mvn install操作。

# War包、License以及数据库连接配置

  1. 获取 DevOps War 包,并将其解压到devops-boot-dev模块的target/devops目录下
  2. DevOps 证书存放在devops-boot-dev模块的exf/primetonlicense.xml
  3. 数据库连接信息可在devops-boot-dev模块下的exf/config/user-config.xml文件中进行配置

# 启动

运行devops-boot-dev模块下的DevOpsBoot启动类中的main方法,即可启动运行 DevOps 应用。

# 热部署配置

  1. 进入 File -> Settings -> Build, Execution, Deployment -> Compiler 配置页面,并勾选Build project automatically

    hot-update-1

  2. 进入 File -> Settings -> Advanced Settings 配置页面,并勾选Allow auto-make to start even if developed application is cu rrently running

    hot-update-2

    提示

    此处为 2023.1.5 版本的 IDEA 的配置位置,低版本的 IDEA 对应配置如下:

    • 通过输入快捷键Ctrl + Shift + Alt + /跳出的弹窗中双击选中第一个选项1.Registry
    • Registry界面中找到并勾选 Key 为compiler.automake.allow.when.app.running配置项
  3. 重启 IDEA

  4. Debug模式运行devops-boot-dev模块下的DevOpsBoot启动类中的main方法,以完成 DevOps 应用服务的启动

  5. 在每次修改完代码后,需输入快捷键Ctrl + F9(构建整个项目)或Ctrl + Shift + F9(构建当前类)完成代码的编译,即可完成代码的热更新


# Eclipse开发平台

# 导入 DevOps 项目

依次点击 File -> Import -> General -> Existing Projects into Workspace,选中 DevOps 代码根目录,选中Search for nested projects,点击Finish完成导入

eclipse-import-project-1

eclipse-import-project-2

# 配置 Maven 以及 JDK 环境

  1. 点击进入 Window -> Preferences -> Maven -> User Settings 页面,配置项目 Maven Home 等信息

    maven-setup

  2. 点击进入 Window -> Preferences -> Java-> Installed JREs 页面,配置增加本地 JDK 安装目录下的 jre 路径

    jdk-setup-1

  3. 点击进入 Window -> Preferences -> Java-> Compiler 页面,将CompiIer compliance level设置为1.8

    jdk-setup-2

# 代码编译

  1. 在进行编译之前,先将devops-dailybuild/backend/pom.xml下的 <module>../swagger</module>注释掉

  2. 鼠标右键点击devops-dailybuild/backend/pom.xml文件,找到Run As后,点击Run Configurations,跳出弹窗后,双击Maven Build新建 Maven 构建执行配置,其中Base directory的值为${project_loc:devops-dailybuild}/backendGoals的值为compile。待配置完成点击Apply按钮进行保存,点击Run按钮开始执行编译

    module-compile-1

  3. 待步骤二编译完成后,对devops-boot-dev/pom.xml执行同样操作,增加devops-boot-dev模块的 Maven 构造执行配置,其中Base directory的值为${project_loc:devops-boot-dev}Goals的值为compile

    module-compile-2

# War包、License以及数据库连接配置

  1. 获取 DevOps War 包,并将其解压到devops-boot-dev模块的target/devops目录下
  2. DevOps 证书存放在devops-boot-dev模块的exf/primetonlicense.xml
  3. 数据库连接信息可在devops-boot-dev模块下的exf/config/user-config.xml文件中进行配置

# 启动

运行devops-boot-dev模块下的DevOpsBoot启动类中的main方法,即可启动运行 DevOps 应用。

# 热部署配置

  1. 勾选 Project -> Build Automatically

    hot-update

  2. Debug模式运行devops-boot-dev模块下的DevOpsBoot启动类中的main方法,以完成 DevOps 应用服务的启动

上次更新: 2023-9-12 14:25:23