父项目下复制子项目,yml配置文件变粉红解决办法

父项目下复制子项目,yml配置文件变粉红,没有提示功能

在软件开发过程中,由父项目负责管理各种依赖版本,子项目继承父项目,在引入依赖时,可以不用管理依赖的版本,这样在父项目下,各子项目在开发时,不用担心依赖版本的不匹配,方便了软件开发的管理。在同一父项目下,有时不同的module有大量重复的代码,或者自己复制其他module进行修改测试,此外新建maven项目常常要下载很多包,构建耗费大量的时间;此时,选择复制module可以节省很多时间。

复制子项目

1.复制manage项目为manage-test
在这里插入图片描述
2.修改子项目pom文件中的artifactId,因为是直接复制过来的,不会自动更改
在这里插入图片描述
3.在父项目的pom文件中添加module
在这里插入图片描述

yml配置文件出现问题,变成粉红色

但是此时发现,复制的子项目中的resources里面的yml配置文件时不正常的,是粉红色的标志,在yml写配置信息,也不会自动提示和补全,这就很难受。在这里插入图片描述
打开idea的project structure,可以看到项目结构,我们复制的子项目是没有Spring文件的
在这里插入图片描述
在这里插入图片描述
此外,还要注意一点点击我们复制的项目,看看他的Resource Folders下面是不是只有一个,如果有多个,请删除,否则后面添加不了spring文件,还有下面如果有灰色的项目,请一并删除(我在这里耗费了好长时间,当时yml文件出问题,网上搜了一堆解答,都没有解决,最后发现Resource Folders这里有两个,下面还有一堆灰色的,全给删除了之后,添加正常,不然会出现 The root already belongs to module "XXX"的错误)。

在这里插入图片描述
然后,右键子项目,选择add—spring,再点击绿色小叶子的按钮,选择自己的yml配置文件。
在这里插入图片描述
在这里插入图片描述
解决,配置文件恢复正常,有提示,会自动补全!!
在这里插入图片描述
一定要注意上面的提示点!

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Spring Boot 中,可以使用 `@PropertySource` 注解来引入外部的属性文件,并使用 `@Value` 注解来读取属性值。 如果你想在项目中读取子项目配置文件,可以在子项目的 `application.properties` 或 `application.yml` 文件中定义需要读取的属性,然后在项目中通过 `@PropertySource` 注解来引入子项目配置文件。 举个例子,如果你想在项目中读取子项目中的 `application.properties` 文件中的属性,可以在项目的配置类中加上以下注解: ```java @Configuration @PropertySource("classpath:/application.properties") public class AppConfig { // ... } ``` 其中,`classpath:` 表示在 classpath 中查找文件,因此这个示例代码会在子项目的 classpath 中查找 `application.properties` 文件。 接下来,你就可以使用 `@Value` 注解来读取子项目中的属性了,例如: ```java @Component public class MyComponent { @Value("${my.property}") private String myProperty; // ... } ``` 其中,`${my.property}` 就是子项目中的属性名。 如果子项目使用的是 YAML 文件,那么 `@PropertySource` 注解需要写成这样: ```java @Configuration @PropertySource("classpath:/application.yml", factory = YamlPropertySourceFactory.class) public class AppConfig { // ... } ``` 需要注意的是,这里需要指定 `factory` 属性为 `YamlPropertySourceFactory.class`,表示使用 YAML 格式的属性文件。同时,在读取属性时也需要使用 `@Value` 注解,并使用 YAML 的语法来读取,例如: ```java @Component public class MyComponent { @Value("${my.property}") private String myProperty; // ... } ``` 其中,`${my.property}` 就是 YAML 文件中的属性名。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值