多模块中部分模块的配置文件 类加载器加载不到

2024-09-05 19:58

本文主要是介绍多模块中部分模块的配置文件 类加载器加载不到,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

场景:

做公司多模块项目时,发现公司原有的模块的配置文件,类加载器都能加载到文件,而自己新建的模块(或者复制的其他模块改名)。项目目录下:(不方便截图)

项目名

#--子模块1

#--子模块2

#--子模块3

#-----子子模块1

#--------子子模块1的pom

#-----子子模块2

#--------子子模块2的pom

#-----自己新建的模块

#--------子子模块 的pom

#-----pom文件

#--子模块4

#--pom文件

其中每一个子子模块都有一个自己对于的plugins.xml配置文件。该文件都放在 每个子模块的resource文件下,

项目中使用的类加载器代码文件如下:

Enumeration<URL> pluginConfigResources = 
Thread.currentThread().getContextClassloader().getResources("plugin.xml")

正常情况下,该语句将会加载 根路径下所有的名字为“plugin.xml”的文件。

解决方法:

1、首先,查看target文件夹是否存在,没有存在的话  build一下。

2、查看target文件夹中是否有“plugin.xml” ,如果没有说明,需要给编译器指明一下哪些是source文件夹,哪些是resource文件夹。idea的structure中可以查看.。这个文件夹的性质还可以通过在pom中添加:也可以指明

<build><resources><resource><directory>src/main/java</dircetory><includes><include>**/*.java</include></includes><filtering>false<filtering><resource><resource><directory>src/main/resources</dircetory><includes><include>**/*.*</include></includes><filtering>false<filtering><resource></resorces>
</build>

 

3、以上都没问题,而类加载器(java的类加载器会去 里去查找我们的文件名称)死活加载不上,这时看了某个大佬的博客,“构建子模块却无法加载”https://blog.csdn.net/weixin_45151960/article/details/109001773 

发现需要在 启动类的pom文件中依赖,我们新建的模块。即使我们新建的模块在它的父模块(该父模块已在启动类模块中添加了依赖)的pom文件中添加 <model>模块名<model>了,我们也要在 启动模块的pom文件中添加,子模块的依赖。

至此,郁闷了几天的事情终于搞定。(遇见的玄学问题,有时候不按上述说的添加子模块依赖,也有可能成功,但很难成功一次,原因不知。。)

 

这篇关于多模块中部分模块的配置文件 类加载器加载不到的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1139917

相关文章

JAVA系统中Spring Boot应用程序的配置文件application.yml使用详解

《JAVA系统中SpringBoot应用程序的配置文件application.yml使用详解》:本文主要介绍JAVA系统中SpringBoot应用程序的配置文件application.yml的... 目录文件路径文件内容解释1. Server 配置2. Spring 配置3. Logging 配置4. Ma

SpringBoot项目启动后自动加载系统配置的多种实现方式

《SpringBoot项目启动后自动加载系统配置的多种实现方式》:本文主要介绍SpringBoot项目启动后自动加载系统配置的多种实现方式,并通过代码示例讲解的非常详细,对大家的学习或工作有一定的... 目录1. 使用 CommandLineRunner实现方式:2. 使用 ApplicationRunne

spring6+JDK17实现SSM起步配置文件

《spring6+JDK17实现SSM起步配置文件》本文介绍了使用Spring6和JDK17配置SSM(Spring+SpringMVC+MyBatis)框架,文中通过示例代码介绍的非常详细,对大家的... 目录1.配置POM文件2.在resource目录下新建beans.XML文件,用于配置spirng3

多模块的springboot项目发布指定模块的脚本方式

《多模块的springboot项目发布指定模块的脚本方式》该文章主要介绍了如何在多模块的SpringBoot项目中发布指定模块的脚本,作者原先的脚本会清理并编译所有模块,导致发布时间过长,通过简化脚本... 目录多模块的springboot项目发布指定模块的脚本1、不计成本地全部发布2、指定模块发布总结多模

Mysql8.0修改配置文件my.ini的坑及解决

《Mysql8.0修改配置文件my.ini的坑及解决》使用记事本直接编辑my.ini文件保存后,可能会导致MySQL无法启动,因为MySQL会以ANSI编码读取该文件,解决方法是使用Notepad++... 目录Myhttp://www.chinasem.cnsql8.0修改配置文件my.ini的坑出现的问题

SpringBoot项目删除Bean或者不加载Bean的问题解决

《SpringBoot项目删除Bean或者不加载Bean的问题解决》文章介绍了在SpringBoot项目中如何使用@ComponentScan注解和自定义过滤器实现不加载某些Bean的方法,本文通过实... 使用@ComponentScan注解中的@ComponentScan.Filter标记不加载。@C

MySQL8.0找不到my.ini如何解决

《MySQL8.0找不到my.ini如何解决》在配置MySQL主从复制时,发现找不到my.ini配置文件,通过检查路径和打开隐藏文件夹,最终在C:ProgramDataMySQLMySQLSer... 目录问题描述解决方法总结问题描述今天在配置mysql主从复制的时候发现,找不到my.ini这个配置文件。

springboot 加载本地jar到maven的实现方法

《springboot加载本地jar到maven的实现方法》如何在SpringBoot项目中加载本地jar到Maven本地仓库,使用Maven的install-file目标来实现,本文结合实例代码给... 在Spring Boothttp://www.chinasem.cn项目中,如果你想要加载一个本地的ja

Python中构建终端应用界面利器Blessed模块的使用

《Python中构建终端应用界面利器Blessed模块的使用》Blessed库作为一个轻量级且功能强大的解决方案,开始在开发者中赢得口碑,今天,我们就一起来探索一下它是如何让终端UI开发变得轻松而高... 目录一、安装与配置:简单、快速、无障碍二、基本功能:从彩色文本到动态交互1. 显示基本内容2. 创建链

最好用的WPF加载动画功能

《最好用的WPF加载动画功能》当开发应用程序时,提供良好的用户体验(UX)是至关重要的,加载动画作为一种有效的沟通工具,它不仅能告知用户系统正在工作,还能够通过视觉上的吸引力来增强整体用户体验,本文给... 目录前言需求分析高级用法综合案例总结最后前言当开发应用程序时,提供良好的用户体验(UX)是至关重要