Skip to content

快速启动

初始化系统

盘古环境

盘古公共开发平台:

申请对公共开发平台网站访问的SSO登录权限。 选择环境下:

  • 1:如果本项目登录方式为SSO登录:请提前申请项目SSO信息,需要在盘古初始化系统时进行设置。
  • 2:访问配置中心下初始化系统菜单,新增搭建系统的初始化信息。复制并保存系统英文编码(对应前端运行时脚手架配置信息:VITE_SYSTEM_NAME 【必填】系统英文编码,用于隔离系统数据)。

启动前端

环境准备

开始前,需要先确保你的本地安装了node环境,node版本要求为18版本。为了更好的开发体验,我们建议开发者使用pnpm管理依赖,前端脚手架中,也内置了pnpm-lock文件用于锁定依赖版本。

bash
# 修改npm私服地址(虚拟桌面使用)
npm config set registry http://nexus.hisense.com/repository/npm-public/
# 安装pnpm环境
npm install pnpm -g
# 修改pnpm私服地址(虚拟桌面使用)
pnpm config set http://nexus.hisense.com/repository/npm-public/

克隆项目

将盘古前端工程克隆并推送到业务项目git空间(如果无法正常克隆,有可能是没有该项目的权限,请联系Pangea团队解决)。

bash
# 克隆项目
git clone http://gitlab.hisense.com/Pangea/Pangea-Cloud/frontend/pangea-vue3-project/pangea-web-vue3.git
# 安装依赖
pnpm install

修改初始配置

脚手架工程根目录.env用于设置系统环境变量,其中变量说明如下:

变量名称说明
VITE_SYSTEM_NAME【必填】系统英文编码,取自技术中台项目L编码,用于项目数据隔离
VITE_LOGIN_TYPE系统登录方式,可选sso或local,默认为sso
VITE_PROJECT_CODE项目编码,用于获取模板、自定义组件等资产
VITE_PROJECT_ENV环境编码,用于获取模板、自定义组件等资产
VITE_WAS_SITEIDWAS用户运营分析统计 siteId
VITE_PROJECT_NAME系统中文名称,展示在导航栏

启动项目

配置完成后,即可启动项目进行操作了,如果你还需要后端能力,可继续启动后端。

bash
npm run start

启动后端

后端脚手架工程

  • 访问公共开发平台的微服务开发,根据脚手架按需下载后端脚手架源码工程进行项目开发。

环境准备

  • JDK >= 1.8(根据脚手架配置)
  • Oracle >= 11g
  • Maven >= 3.0
  • Redis >= 3.2
  • Lombok 插件

克隆demo项目

从Gitlab将项目克隆到虚拟桌面的本地(如果无法正常克隆,有可能是没有该项目的权限,请联系Pangea团队解决pangea.sys@hisense.com)。

bash
git clone http://gitlab.hisense.com/Pangea3/pangea-backend.git

配置Maven私服

我们提供了两种方式来配置Maven私服,建议使用推荐方式。

推荐方式

在IntelliJ IDEA中指定工程根目录下的settings.xml文件,如下图所示:

覆盖安装

使用本地安装的maven覆盖IDEA插件,并将以下内容添加至本地settings.xml文件中的<profiles>标签中

xml
<profile>
<id>hisense-nexus</id>
<repositories>
    <!-- release库 -->
    <repository>
        <id>hisense-nexus</id>
        <name>hisense-nexus</name>
        <url>http://nexus.hisense.com/repository/maven-public/</url>
    </repository>
    <!-- snapshot库 -->
    <repository>
        <id>hisense-nexus-snapshot</id>
        <name>hisense-nexus-snapshot</name>
        <url>http://nexus.hisense.com/repository/maven-public-snapshot/</url>
        <layout>default</layout>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
        <releases>
            <enabled>false</enabled>
        </releases>
    </repository>
</repositories>
<pluginRepositories>
    <pluginRepository>
        <id>hisense-nexus</id>
        <name>hisense-nexus</name>
        <url>http://nexus.hisense.com/repository/maven-public/</url>
    </pluginRepository>
</pluginRepositories>
<activation>
    <activeByDefault>true</activeByDefault>
</activation>
</profile>

其他详细配置参考Nexus仓库使用指引及规范或者联系 Pangea 团队。

常见问题:依赖下载失败

使用「海信私服」后,有时依旧下载依赖失败,检查是否使用idea内嵌的Maven,这个内嵌的Maven通常比较新,但不一定稳定,而且往往也会和在命令行使用的Maven不是一个版本。请换成本地环境自带maven,maven版本>=3.0。

启动demo服务

此时可直接启动demo服务,看到如下截图,则表明后端服务启动成功。 页面设计器

注意

以上为快速启动本地服务。如果进行本地开发,需要继续参考下述文档,完成后续设置

更改服务名、端口号

进行本地开发启动后端服务前,需要更改脚手架bootstrap.yml文件中的服务名,端口号

yaml
server:
  port: ${PORT:8899}
  # servlet.context-path 按需配置,如不配置,将按照 spring.application.name 注册和调用服务时
  #servlet:
    #context-path: /demo

spring:
  application:
    name: ${YML_NAME:pangea-demo}
  profiles:
    active: ${PROFILE:dev}

context-path对应网关调用的映射地址,可按需自行更改,如保留,则需要在nacos的gateway-router中配置对应的映射地址(例:在postman中,context-path连接端口号接口地址),如下图:
system_name对应前端请求中的headers中的systemName参数,可忽略不填写

配置注册中心

脚手架的bootstrap.yml文件如下:

yaml
  cloud:
    nacos:
      server-addr: http://${NACOS_ADDR:nacos-server-pangea-pangeav3-stage.clouddev.hisense.com}
      discovery:
        server-addr: ${spring.cloud.nacos.server-addr}
        namespace: ${NAME_SPACE:pangea}
      config:
        server-addr: ${spring.cloud.nacos.server-addr}
        file-extension: yaml
        namespace: ${NAME_SPACE:pangea}

动态变量NACOS_ADDR对应注册中心地址,默认为nacos-server-pangea-pangeav3-stage.clouddev.hisense.com,环境部署时,需在云平台中配置注册中心的地址。 注意:由于nacos升级新增GRPC端口,本地云内开发开发时,则需更配置偏移量和申请访问IP权限;
1:云内需要调整 偏移量 -Dnacos.server.grpc.port.offset=2389 (11237-8848) 云内idea配置偏移量 2:10.19.59.232 申请与云外四层网关访问权限 动态变量NAMESPACE对应注册中心的命名空间。环境部署时,则需要自行配置自己项目的命名空间。本地开发时,则无需更改;

配置 reids 缓存

脚手架默认启用application-dev.yml文件中的公共redis。正式环境可参考application-prod.yml中环境变量,设置对应变量值

如需启用本地redis缓存,则可以参照prod的配置,将application-dev.yml文件中的公共redis配置信息更改为对应的本地缓存地址和端口

application-dev.yml:

yaml
  redis:
    password: testtest
    sentinel:
      master: mymaster
      nodes: 1.1.1.1:26379,2.2.2.2:26379,3.3.3.3:26379

application-prod.yml:

yaml
  redis:
    host: ${REDIS_HOST:127.0.0.1}
    port: ${REDIS_PORT:6379}
    password: ${REDIS_PASSWORD:demo}

修改数据库连接

项目开发时请提前自行申请数据库,并替换默认的数据库连接信息;默认数据库仅作demo演示使用,会定期清理数据。数据库申请请联系项目对应db工程师。

yaml
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource
    driverClassName: oracle.jdbc.OracleDriver
    url: jdbc:oracle:thin:@${ORACLE_HOST:1.2.3.4}:1521:${ORACLE_PID:test}
    username: ${ORACLE_NAME:username}
    password: ${ORACLE_PASSWORD:password}

注意

application.yml和bootStrap.yml文件中的动态变量均可按照项目组实际情况,在云平台部署时自定配置。