IntelliJ Idea创建spring聚合项目

本文详细介绍了如何使用IntelliJ IDEA创建Spring多模块聚合工程,包括创建总工程、子工程(parent工程)及子工程的子工程的过程。通过图文并茂的步骤指导,帮助读者理解pom文件配置,实现不同类型的模块打包。

IntelliJ Idea创建spring聚合工程

1. 首先创建一个空工程,作为所有聚合工程的总工程

第一步:点击Create New Project
在这里插入图片描述在这里插入图片描述
第二步:填写总工程的名称
在这里插入图片描述
点击finish,然后点击cancel。

2.创建第一个子工程(管理其他工程依赖的工程, parent工程)

第一步:
在这里插入图片描述
第二步:
在这里插入图片描述
第三步:填写工程名称
在这里插入图片描述
在创建完成之后,在pom文件里面加上:

<packaging>pom</packaging>

表示pom 项目里没有java代码,也不执行任何代码,只是为了聚合工程或传递依赖用的。

<groupId>cn.yj</groupId>
<artifactId>parent</artifactId> 
<version>1.0-SNAPSHOT</version>
<packaging>pom</packaging>

3. 创建其他子工程

第一步:点击file-> new moudule
在这里插入图片描述
第二步:
在这里插入图片描述
注意,这一步,若选择null,则和parent目录同级别,不选择的话,则是作为parent的子工程。
创建好子工程之后,可以根据自己项目的类型修改打包方式,修改pom文件里的:

<packaging>jar</packaging>或者<packaging>war</packaging>

创建好的结构如图所示:

在这里插入图片描述

4. 创建子工程的子工程

若想在user工程下创建user的子工程,操作如下:
第一步:
在这里插入图片描述
第二步:
在这里插入图片描述
第三步:
在这里插入图片描述

创建好的结构如图所示:

在这里插入图片描述

》》》博主长期更新学习心得,推荐点赞关注!!!
》》》若有错误之处,请在评论区留言,谢谢!!!

<think>我们参考了用户提供的引用内容,并结合Spring Cloud微服务项目创建的一般步骤,整理出在IntelliJ IDEA 2020中创建Spring Cloud微服务项目的步骤。由于IDEA版本为2020,我们假设用户使用的是较新的Spring Cloud版本(如Hoxton或更高)以及Spring Boot 2.x。 主要步骤包括: 1. 创建项目(作为聚合项目) 2. 添加公共依赖管理(Spring Cloud依赖和Spring Cloud Alibaba依赖等) 3. 创建子模块(微服务模块,如注册中心、服务提供者、服务消费者等) 4. 配置各个子模块的配置文件 5. 编写启动类和业务代码 注意:在创建过程中,我们可能会使用Eureka作为注册中心(如引用[3]和[4]所示),但也可以使用其他注册中心(如Nacos,如引用[2]所提及)。这里我们以Eureka为例,因为引用中提到了它。 具体步骤:</think>### 在IntelliJ IDEA 2020中创建Spring Cloud微服务项目的步骤 以下是详细操作流程(以Spring Cloud Hoxton和Spring Boot 2.3为例): #### 1. **创建项目聚合工程)** - 打开IDEA → `New Project` → 选择`Maven` - 勾选`Create from archetype` → 选择`org.apache.maven.archetypes:maven-archetype-site` - 填写`GroupId`(如`com.example`)和`ArtifactId`(如`cloud-parent`) - 在父工程pom.xml中添加依赖管理: ```xml <dependencyManagement> <dependencies> <!-- Spring Cloud Hoxton --> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>Hoxton.SR12</version> <type>pom</type> <scope>import</scope> </dependency> <!-- Spring Boot --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-dependencies</artifactId> <version>2.3.12.RELEASE</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> ``` #### 2. **创建注册中心子模块(Eureka Server)** - 右键父工程 → `New` → `Module` → 选择`Spring Initializr` - 选择依赖:`Eureka Server` → 命名模块(如`eureka-server`) - 在启动类添加注解: ```java @SpringBootApplication @EnableEurekaServer // 启用Eureka注册中心 public class EurekaApplication { public static void main(String[] args) { SpringApplication.run(EurekaApplication.class, args); } } ``` - 配置`application.yml`: ```yaml server: port: 8761 eureka: client: register-with-eureka: false # 不向自身注册 fetch-registry: false # 不获取注册列表 ``` #### 3. **创建服务提供者子模块** - 新建模块 → 选择依赖:`Spring Web` + `Eureka Discovery Client` - 启动类添加注解: ```java @SpringBootApplication @EnableDiscoveryClient // 启用服务注册与发现 public class ProviderApplication { ... } ``` - 配置`application.yml`: ```yaml server: port: 8081 spring: application: name: service-provider # 服务名称 eureka: client: service-url: defaultZone: http://localhost:8761/eureka # 注册中心地址 ``` #### 4. **创建服务消费者子模块** - 新建模块 → 选择依赖:`Spring Web` + `Eureka Discovery Client` + `OpenFeign` - 启动类添加注解: ```java @SpringBootApplication @EnableFeignClients // 启用Feign客户端 public class ConsumerApplication { ... } ``` - 创建Feign接口调用服务: ```java @FeignClient(name = "service-provider") // 指定服务名称 public interface UserServiceClient { @GetMapping("/users/{id}") User getUser(@PathVariable Long id); } ``` #### 5. **启动与验证** 1. 依次启动:`eureka-server` → `service-provider` → `service-consumer` 2. 访问Eureka控制台:`http://localhost:8761` - 应看到`SERVICE-PROVIDER`和`SERVICE-CONSUMER`已注册[^4] 3. 通过消费者调用接口验证通信 > **关键配置说明** > - `@EnableEurekaServer`:声明为注册中心服务器 > - `@EnableDiscoveryClient`:服务提供者/消费者注册到Eureka > - `@EnableFeignClients`:启用声明式REST调用[^2] > - `defaultZone`:指定注册中心地址(必须与服务端端口一致)[^3]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值