`
xinklabi
  • 浏览: 1591681 次
  • 性别: Icon_minigender_1
  • 来自: 吉林
文章分类
社区版块
存档分类
最新评论

Java对于多个jar包(或者引用工程)中同名文件的加载顺序

    博客分类:
  • Java
 
阅读更多

    项目中用到了一个工程(如sit-fundProduct)中引用了两个项目jar包(ats-webui和sit-Core),然后sit-fundProduct调用其中ats-webui包中的加载文件(如ats-config.properties)的方法,不过这个文件在三个工程或jar包中都有且路径相同,加载时候会选择哪个文件还一直没有具体验证过,今天验证了,做个记录。

    其实无论是sit-fundProduct引用另外两个项目以project形式或者jar包的形式,加载的时候都会按照这样的顺序来,首先找sit-fundProduct下面的文件,如果不存在,因为调用加载文件的方法写在ats-webui中,因此其次会从它下面加载(调试的时候可以看到project和jar下面文件路径长的不一样的,且jar包不能用new File的方式创建对象,只能用getResource或者类似的方法获取内容),而最后会加载sit-Core中的文件。



 

  • 大小: 83.2 KB
分享到:
评论

相关推荐

    struts2配置文件加载顺序

    5. **package配置文件**:除了`struts.xml`外,开发者还可以创建多个包(package)配置文件,以实现模块化的配置。这些文件可以放在`struts.xml`中引入,也可以通过`<include file="..."/>`标签进行引入。 加载顺序...

    浅谈两个jar包中包含完全相同的包名和类名的加载问题

    当多个Jar包中包含相同的包名和类名时,可能会出现类加载问题。下面我们来讨论这种情况下的类加载问题。 类加载机制 Java中的类加载机制是指Java虚拟机(JVM)在加载类文件时的相关处理过程。类加载机制分为三个...

    打包插件fatjar

    - 同名类冲突:如果多个依赖库中有同名类,可能会导致运行时问题。此时需要处理类加载器策略或调整打包顺序。 - 版本管理:fatjar可能掩盖依赖版本问题,因此在大型项目中,推荐使用更灵活的模块化部署方案,如...

    Tomcat加载顺序

    这是因为Tomcat默认会按照上述顺序查找类,当多个目录下存在相同或相似的类时,加载顺序决定了最终加载哪个版本的类。因此,合理配置类路径,确保正确的加载顺序,是防止此类问题的关键。 #### 结论 Tomcat的类...

    Spring Boot打jar包后配置文件的外部优化配置方法

    此外,`spring.config.location`环境属性可以用来指定配置文件的显式位置,这可以是一个目录位置列表或者文件路径,支持使用逗号分隔多个位置。例如,可以指定一个特定的配置文件`myproject.properties`来替换默认的...

    java classLoader 的全面讲解

    Java 类加载器(ClassLoader)是Java虚拟机(JVM)中的一个重要组成部分,它负责加载类的字节码文件,使得程序能够运行。深入理解ClassLoader对于优化应用性能、处理类加载问题以及实现自定义加载策略至关重要。 一...

    java的SpringBoot基础常用规范

    - **配置文件加载顺序**: - `application.properties` > `application.yml` > `application.yaml` 这意味着如果同时存在这三种类型的配置文件,那么`.properties`文件中的配置会覆盖`.yml`或`.yaml`文件中的...

    scjp中core java经典考点

    - **加载顺序**:JVM会在启动时自动加载位于特定路径下的jar文件。 --- #### 模块二:面向对象编程基础 **1. 访问控制修饰符** - **修饰符及其作用范围**: - **public**:可以被任意类访问。 - **protected...

    java资料面试题

    随着互联网的发展,Java 成为了跨平台开发的主要工具之一,广泛应用于企业级应用、移动应用(特别是 Android 应用)、Web 开发等多个领域。 #### 1.4 Android与Java语言有什么关系? Android 操作系统主要使用 ...

    java笔试题大全

    - **方法重载(Overloading):** 方法重载是指在同一个类中定义多个同名的方法,但这些方法的参数列表不同(包括参数的数量、类型或顺序不同)。这样可以根据传入的不同参数来调用不同的方法实现,从而达到代码复用的...

    核心java测试题

    在配置时,应包含`%JAVA_HOME%\lib\rt.jar`和`%JAVA_HOME%\lib\tools.jar`以及其它可能需要的库文件目录。 ### 2. 构造方法 构造方法用于初始化类的实例。其关键特性如下: - **名称**:与类名相同。 - **无返回...

    java范例开发大全源代码

     实例144 读取jar包文件 215  实例145 文件的加密/解密操作 217  实例146 复制图片 219  实例147 随机读写Java类文件 221  第3篇 Java面向对象编程  第8章 面向对象(教学视频:72分钟) 226  ...

    java范例开发大全

    实例144 读取jar包文件 215 实例145 文件的加密/解密操作 217 实例146 复制图片 219 实例147 随机读写Java类文件 221 第3篇 Java面向对象编程 第8章 面向对象(教学视频:72分钟) 226 8.1 类 226 实例148 简单的...

    Java范例开发大全 (源程序)

     实例144 读取jar包文件 215  实例145 文件的加密/解密操作 217  实例146 复制图片 219  实例147 随机读写Java类文件 221  第3篇 Java面向对象编程  第8章 面向对象(教学视频:72分钟) 226  8.1 类 ...

    java面试800题

    Q0046 一个文件中是否可以有多个public类? 不可以 Q0047 子类是否可以访问父类的私有成员? 不可以 Q0048 NULL是否是Java的关键字? 不是。null,false,true是保留字 Q0049 一个有序数组和一个无序数组,从无序...

    java书本答案

    **知识点:** 方法重载(Overloading)是指在一个类中可以有多个同名的方法,但它们的参数列表必须不同。方法重载允许我们使用相同的名字来表示相似的操作,提高了代码的可读性和复用性。 #### 题目4: Applet的测试...

    struts2配置文件详解

    #### 四、配置文件的加载顺序 Struts2框架加载配置文件时遵循一定的顺序,具体如下: 1. `struts-default.xml` 2. `struts-plugin.xml` 3. `struts.xml` 4. `struts.properties` 这个顺序决定了配置文件中相同配置...

Global site tag (gtag.js) - Google Analytics