目录
一、环境准备
操作系统:Win10(根据自己电脑而定)
JDK:64 bit JDK 1.8
Maven:Maven 3.6.1
Idea:idea2019(版本不限)
达梦数据库:DM8
二、下载源码
下载地址:https://github.com/alibaba/nacos/releases/tag/2.4.0.1
三、编译源码
3.1 导入源码到idea
- 将下载后的nacos-2.4.0.1.zip,拷贝到idea工作空间,如:D:\workspaceFromCloud\nacos-source;
- 解压nacos-2.4.0.1.zip;
- 将解压后的nacos-2.4.0.1改成nacos-dm-2.4.0.1(此步骤根据自己需要去修改);
- 打开idea开发工具,导入nacos-dm-2.4.0.1包,等待其加载完毕;
注意:导入后部分模块前面会出现红色且带下划线的提醒,但不影响编译打包。
3.2 修改源码配置
3.2.1 pom.xml引入DM8数据库驱动包
具体版本根据使用的数据库版本而定。
3.2.1.1 nacos-all pom.xml
<properties><dependencies>属性中添加如下内容:
<dm.version>8.1.2.79</dm.version>
<dependencies></dependencies>属性中添加如下内容:
<!--DM8-->
<dependency>
<groupId>com.dameng</groupId>
<artifactId>DmJdbcDriver18</artifactId>
<version>${dm.version}</version>
</dependency>
3.2.1.2 nacos-config pom.xml
<dependencies></dependencies>属性中添加如下内容:
<!--DM8-->
<dependency>
<groupId>com.dameng</groupId>
<artifactId>DmJdbcDriver18</artifactId>
<version>${dm.version}</version>
</dependency>
3.2.2 nacos-persistence模块修改
修改类com/alibaba/nacos/persistence/datasource/ExternalDataSourceProperties.java中的驱动。
找到private static final String JDBC_DRIVER_NAME = "com.mysql.cj.jdbc.Driver";
修改成如下:private static final String JDBC_DRIVER_NAME = "dm.jdbc.driver.DmDriver";
3.2.3 nacos-datasource-plugin模块修改
模块位置:nacos-plugin。
1,修改com/alibaba/nacos/plugin/datasource/constants/DataSourceConstant.java类。
添加如下内容:
public static final String DM = "dameng";
2,增加达梦8的Mapper映射配置,内容如下
具体修改方法:
(1),在com.alibaba.nacos.plugin.datasource.impl目录下面创建dm文件夹;
(2),将com.alibaba.nacos.plugin.datasource.impl.mysql目录下面的所有文件拷贝至dm文件夹,修改文件名称及类名称后缀为:ByDm
(3),打开每个类文件,找到涉及如下代码的部分:
@Override
public String getDataSource() {
return DataSourceConstant.MYSQL;
}
改成如下:
@Override
public String getDataSource() {
return DataSourceConstant.DM;
}
3,修改resource/META-INF.services配置
文件位置:
src\main\resources\META-INF\services\com.alibaba.nacos.plugin.datasource.mapper.Mapper
添加如下内容:
com.alibaba.nacos.plugin.datasource.impl.dm.ConfigInfoAggrMapperByDm
com.alibaba.nacos.plugin.datasource.impl.dm.ConfigInfoBetaMapperByDm
com.alibaba.nacos.plugin.datasource.impl.dm.ConfigInfoMapperByDm
com.alibaba.nacos.plugin.datasource.impl.dm.ConfigInfoTagMapperByDm
com.alibaba.nacos.plugin.datasource.impl.dm.ConfigTagsRelationMapperByDm
com.alibaba.nacos.plugin.datasource.impl.dm.HistoryConfigInfoMapperByDm
com.alibaba.nacos.plugin.datasource.impl.dm.TenantInfoMapperByDm
com.alibaba.nacos.plugin.datasource.impl.dm.TenantCapacityMapperByDm
com.alibaba.nacos.plugin.datasource.impl.dm.GroupCapacityMapperByDm
四、源码打包
打开cmd,进入目录:D:\workspaceFromCloud\nacos-source\nacos-dm-2.4.0.1,执行mvn命令:
mvn -Prelease-nacos -Dmaven.test.skip=true -Dpmd.skip=true -Drat.skip=true -Dcheckstyle.skip=true clean install -U
打包成功后如下:
打包后的文件位置:D:\workspaceFromCloud\nacos-source\nacos-dm-2.4.0.1\distribution\target。
在idea中查看打包后的文件位置如下:
五、达梦8数据库的Nacos脚本
参考:nacos-2.4.0.1达梦版数据库脚本-CSDN博客
六、配置nacos并启动
6.1 修改数据库连接配置
打开nacos-server-2.4.0\nacos\conf\application.properties,修改如下配置:
spring.datasource.platform=dameng
db.num=1
db.url.0=jdbc:dm://127.0.0.1:5237/NACOS?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true
db.user.0=NACOS
db.password.0=NACOS
pool.config.driver-class-name:dm.jdbc.driver.DmDriver
6.2 启动nacos
进入nacos目录:nacos-server-2.4.0\nacos\bin
打开doc窗口,执行单机启动命令:
startup.cmd -m standalone
七、登录测试
浏览器输入地址:http://127.0.0.1:8848/nacos/index.html#/login
用户名:nacos 密码:nacos
登录成功如下: