# nacos2.1.0-dm8
**Repository Path**: fujc2dev/nacos2.1.0-dm8
## Basic Information
- **Project Name**: nacos2.1.0-dm8
- **Description**: nacos2.1.0-dm8
- **Primary Language**: Unknown
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2025-04-18
- **Last Updated**: 2025-04-18
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
前置环境:
SpringBoot:2.3.12.RELEASE
Spring Cloud:Hoxton.SR12
Spring Cloud Alibaba:2.2.9.RELEASE
参考版本说明:https://github.com/alibaba/spring-cloud-alibaba/wiki/版本说明
1. 下载Nacos2.1.0版本源码 https://github.com/alibaba/nacos.git,选择Tag:2.1.0版本;
2. 下载后,导入IDEA,Load Maven,等待项目加载完成,不出意外就要出意外了,因为乱七八糟的原因会下载失败,哈哈,需要自行解决;
3. 因为Nacos的很多类使用了protobuf在编译时自动生成的,可能您的IDEA版本低没有安装,需要自行安装;
4. 当前面这些步骤都处理完毕后,编译项目(Alibaba NACOS 2.1.0 --> Lifecycle --> compile 双击执行)
5. 添加达梦驱动依赖:
com.dameng
DmJdbcDriver18
8.1.3.62
在naming、console模块 pom添加即可
6. 修改com.alibaba.nacos.config.server.service.datasource.ExternalDataSourceProperties.java
源码中默认支持的是Mysql驱动,为了可以支持其他数据库,我们添加private List drivername = new ArrayList<>();
并设置
public void setDrivername(List drivername) {
this.drivername = drivername;
}
找到
List build(Environment environment, Callback callback){
// ...
// 屏蔽原来的默认设置,采用从配置中读取
//poolProperties.setDriverClassName(JDBC_DRIVER_NAME);
poolProperties.setDriverClassName(getOrDefault(drivername, index, JDBC_DRIVER_NAME).trim());
// ...
}
7.修改 nacos-config模块下的PropertiesConstant,com/alibaba/nacos/config/server/constant/PropertiesConstant.java
// 添加支持达梦数据的,使用:spring.datasource.platform=dm8
public static final String DM8 = "dm8";
8.修改 nacos-config模块下的PropertyUtil中的loadSetting方法 com/alibaba/nacos/config/server/utils/PropertyUtil.java
// 添加支持
// 不等于空的时候,采用外部数据源,否则采用嵌入式数据源
setUseExternalDB(!getString(PropertiesConstant.SPRING_DATASOURCE_PLATFORM, "").equals(""));
9. 保证你的达梦数据中含有你的配置的库