Skip to content

基础环境搭建(必读!)

1.项目版本统一管理的两种方式

1.不使用父模块的方式

在快速入门中,我们使用的就是这个方式,也就是直接在当前模块中引入通用配置,指定版本

xml
    <!-- 通过properties来指定版本号 -->
    <properties>
        <!-- 指定编译版本 -->
        <java.version>1.8</java.version>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <!-- 指定Sunrays-Framework的版本 -->
        <sunrays.version>Sunrays-Framework的版本</sunrays.version>
    </properties>

    <dependencyManagement>
        <!-- 使用sunrays-dependencies来管理依赖,则依赖无需加版本号 -->
        <dependencies>
            <dependency>
                <groupId>cn.sunxiansheng</groupId>
                <artifactId>sunrays-dependencies</artifactId>
                <version>${sunrays.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

2.使用父模块的方式(后续演示的方式)

1.sunrays-framework-demo模块

在我的sunrays-framework-demo模块中,由于需要演示多个demo,所以采用的是父模块管理通用配置的方式

CleanShot 2025-01-29 at 15.59.15@2x

2.sunrays-framework-demo作为父模块引入通用配置
xml
    <!-- 通过properties来指定版本号 -->
    <properties>
        <!-- 指定编译版本 -->
        <java.version>1.8</java.version>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <!-- 指定Sunrays-Framework的版本 -->
        <sunrays.version>Sunrays-Framework的版本</sunrays.version>
    </properties>

    <dependencyManagement>
        <!-- 使用sunrays-dependencies来管理依赖,则依赖无需加版本号 -->
        <dependencies>
            <dependency>
                <groupId>cn.sunxiansheng</groupId>
                <artifactId>sunrays-dependencies</artifactId>
                <version>${sunrays.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

CleanShot 2025-01-29 at 16.01.02@2x

3.其余模块继承父模块即可继承通用配置

CleanShot 2025-01-29 at 16.01.36@2x

2.common-log4j2-starter说明

1.这个模块是必须被引入的!

2.对于sunrays-combinations

如果引入了sunrays-combinations模块的依赖,就不需要额外引入common-log4j2-starter,因为已经默认包含了。

3.对于sunrays-common或者sunrays-common-cloud

如果引入的是sunrays-common或者sunrays-common-cloud,那么就需要额外引入common-log4j2-starter。

3.隐私数据保护的问题

1.引入common-env-starter

这个依赖一旦引入,就可以在application.yml配置文件中配置.env文件的路径,然后通过$占位符来从.env文件中读取隐私数据,我在后面的介绍中都会采用这种方式。

2.不引入common-env-starter

在实际开发中,如果不需要进行隐私数据的保护,就可以不引入这个依赖:

  1. 不需要在application.yml配置文件中配置.env文件的路径,也不需要创建.env文件了
  2. 将我示例中的${xxx}的部分直接替换为真实的数据即可,比如:

CleanShot 2025-01-19 at 12.48.42@2x