黑马学成在线-项目搭建

本文详细介绍了基于Java的项目开发环境搭建过程,包括安装Visual Studio Code、Node.js及Yarn,设置权限策略,以及如何使用Maven构建项目。项目工程结构包括父工程、基础工程和多个微服务工程,涉及内容管理、媒资管理、认证授权等多个服务模块。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、开发环境搭建

        1.开发工具版本

开发工具 版本号
IntelliJ-IDEA 2021.x以上版本
Java JDK-1.8.x
Maven 3.6.x以上版本
Mysql 8.x
VMware-workstation 15.x
CentOS 7.x
nacos-server- 1.4.1
rabbitmq 3.8.34
redis 6.2.7
xxl-job-admin: 2.3.1

        2.虚拟机和各软件的安装

                略

        3.前端环境搭建

                安装Visual Studio Code工具

                安装nodejs  v18.14.0          

         

                 运行VScode,安装插件:Auto close Tag、Auto Rename Tag、ESLint、HTML CSS Support

                运行 npm install -g yarn 安装yarn

                安装完成,查看版本 

                

                如果在运行 yarn -v 时发现无法运行,显示如下提示信息。 

                则有管理员身份运行powershell,输入set-ExecutionPolicy RemoteSigned,输入y 此时,输入 get-ExecutionPolicy,重启VScode

 

二、项目工程搭建

1.学成在线使用 Maven 来进行项目的管理和构建。整个项目分为三大类工程:父工程、基础工程 和微服务工程

 

父工程:对依赖包的版本进行管理,对子工程进行聚合管理。

基础工程:继承父类工程、提供基础类库、提供工具类库。

微服务工程:分别从业务、技术方面划分模块,每个模块构建为一个微服务。

                     每个微服务工程依赖基础工程,间接继承父工程。

                     包括:内容管理服务、媒资管理服务、搜索服务、缓存服务、消息服务等

2.搭建父工程

         模块名:xuecheng-plus-parent

         包名:com.xuecheng

确定父工程为pom工程,在pom.xml中添加如下内容

<packaging>pom</packaging>

确定项目所依赖的包及其版本号

<properties>
    <java.version>1.8</java.version>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <spring-boot.version>2.3.7.RELEASE</spring-boot.version>
    <spring-cloud.version>Hoxton.SR9</spring-cloud.version>
    <org.mapstruct.version>1.3.1.Final</org.mapstruct.version>
    <spring-cloud-alibaba.version>2.2.6.RELEASE</spring-cloud-alibaba.version>
    <org.projectlombok.version>1.18.8</org.projectlombok.version>
    <javax.servlet-api.version>4.0.1</javax.servlet-api.version>
    <fastjson.version>1.2.83</fastjson.version>
    <druid-spring-boot-starter.version>1.2.8</druid-spring-boot-starter.version>
    <mysql-connector-java.version>8.0.30</mysql-connector-java.version>
    <mybatis-plus-boot-starter.version>3.4.1</mybatis-plus-boot-starter.version>
    <commons-lang.version>2.6</commons-lang.version>
    <minio.version>8.4.3</minio.version>
    <xxl-job-core.version>2.3.1</xxl-job-core.version>
    <swagger-annotations.version>1.5.20</swagger-annotations.version>
    <commons-lang3.version>3.10</commons-lang3.version>
    <okhttp.version>4.8.1</okhttp.version>
    <swagger-spring-boot-starter.version>1.9.0.RELEASE</swagger-spring-boot-starter.version>
    <elasticsearch.version>7.12.1</elasticsearch.version>
</properties>

编写dependencyManagement 来限定所依赖包的版本,注意:dependencyManagement的作用是限定其它子工程的依赖包版本号,不会直接下载jar依赖包,如果依赖包爆红,需要先把dependencyManagement注释了。      

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-dependencies</artifactId>
            <version>${spring-cloud.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-dependencies</artifactId>
            <version>${spring-boot.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-alibaba-dependencies</artifactId>
            <version>${spring-cloud-alibaba.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
        <!-- lombok,简化类的构建-->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>${org.projectlombok.version}</version>
        </dependency>
        <!-- mapstruct 代码生成器,简化java bean之间的映射 -->
        <dependency>
            <groupId>org.mapstruct</groupId>
            <artifactId>mapstruct-jdk8</artifactId>
            <version>${org.mapstruct.version}</version>
        </dependency>
        <dependency>
            <groupId>org.mapstruct</groupId>
            <artifactId>mapstruct-processor</artifactId>
            <version>${org.mapstruct.version}</version>
        </dependency>
        <dependency>
            <groupId>io.swagger</groupId>
            <artifactId>swagger-annotations</artifactId>
            <version>${swagger-annotations.version}</version>
        </dependency>
        <!-- Servlet 容器管理 -->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>${javax.servlet-api.version}</version>
            <scope>provided</scope>
        </dependency>
        <!-- fastjson ,json解析工具 -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>${fastjson.version}</version>
        </dependency>
        <!-- druid 连接池管理 -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>${druid-spring-boot-starter.version}</version>
        </dependency>
        <!-- mySQL数据库驱动包管理 -->
       
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值