http://d2100.com/questions/817

两个具有相同的名称在CLASSPATH中的类

如果我有两个名称相同的类说在我的类路径的两个不同的JAR将拾起JVM Matcher.java,反正是有,我可以建议JVM选择一个特定的呢?

4条回答

回答#1

引述甲骨文 :

规范秩序

您指定多个类路径项的顺序是很重要的。 Java解释器将查找的目录中的类,它们在类路径变量中出现的顺序。在上面的例子中,Java解释器将首先查找所需目录中的C类: JAVA MyClasses。只有当它没有找到一个适当的名称,在该目录的类口译看看在C: JAVA OtherClasses目录。

这个例子中提到:

C:> Java的类路径C: JAVA MyClasses C: JAVA OtherClasses ...

所以,是的,它会加载一个,先指定的类路径中出现。

回答#2

还有一种方法,为您指定的类应该选择从..您可以创建自己的类加载器加载类,根据您的要求。

你可以使用你的类加载2种方式

  1. Pass it as a parameter to jvm (java -Djava.system.class.loader =com.somepackage.YourCustomClassLoader com.somepackage.YourMainClass)
  2. Use the class loader programatically to load a specific class (refer the links provided).

这里的类加载一些有用的链接

  • Oracle - How to write your own class loader
  • A very nice post on writing custom class loader
回答#3

在classpath中找到的第一个。即,第一个JAR包含您的类将被使用。

你无法控制它从JVM内,但可以控制的classpath -确保你想要的是一个上市/在classpath中首先发现。

回答#4

使用它时使用的类的完全限定路径。但是,如果你是指具有相同的名称类,也具有相同的封装 - 修复类路径。


两个具有相同的名称在CLASSPATH中的类相关推荐

  1. JAXB 有两个名为 ** 的属性,类的两个属性具有相同名称 **解决方案

    用eclipse写JAXB时,发现总是报这样的错. 这是为什么呢? 在网上搜索到的jaxb2的中文教程很少,而且内容太过简单,查阅了一些英文的资料,发现问题是"名称的冲突". 这里 ...

  2. java 两个url对比_一个URL模式中的两个slu ..

    如何将两个slu in放在一个url模式中?我有一个与模型类别有多对一关系的模型链接 . url( regex=r'^(?P[\w-]+)/(?P\d+)(?:/(?P[\w\d-]+))?/$', ...

  3. python一个函数调用另一个函数中的变量_在Python 中同一个类两个函数间变量的调用方法...

    在Python 中同一个类两个函数间变量的调用方法 更新时间:2019年01月31日 15:44:54 作者:wxy_summer 今天小编就为大家分享一篇在Python 中同一个类两个函数间变量的调 ...

  4. LATEX——两张图并列排列/双栏模板中图片通栏并列布局

    LATEX--两张图并列排列/双栏模板中图片通栏并列布局 正常插入图片 并列插入两张图片 双栏模板中图片通栏并列布局1(不同图片使用不同标题,不同编号) 双栏模板中图片通栏并列布局2(不同图片使有不同 ...

  5. 我已经把servlet-api.jar加到classpath中了,可还是无法编译servlet

    2019独角兽企业重金招聘Python工程师标准>>> 在学习servlet的过程中,需要使用javac来对servlet进行编译,于是将servlet-api.jar和jsp-ap ...

  6. 正确认识使用UML中的类图——辨析类图的两种存在形式

    摘要       本文通过对一个"学生选课系统"示例的简要分析与设计,说明UML图之一类图的两种作用及存在形式,以期借此澄清有些朋友可能对类图存在的误解与困惑. 前言       ...

  7. java程序中出现两个class,Java中Class类中两个值得注意的进行类型动态转换的方法...

    Java中的Class类有两个重要的方法:cast()和asSubclass().这两个方法都是用于Class类进行运行时(run-time)阶段的类型转换的.下面来看看他们的定义和使用: 第一个方法 ...

  8. java的环境变量classpath中加点号 ‘.’ 的作用

    java的环境变量classpath中加点号 '.' 的作用 "."表示当前目录,就是编译或者执行程序时,你的.class文件所在的目录: 当找.class文件时,先去" ...

  9. java 路径 20,java中得到classpath和当前类的绝对路径的一些方法(路径中的%20进行替换空格)...

    原网址:http://blog.csdn.net/shendl/article/details/1427475 (注意:利用下面方式得到路径,如果路径中有空格字符, 那么会有"%20&quo ...

最新文章

  1. SLAM综述(4)激光与视觉融合SLAM
  2. Flask-Email中的email_dispatched 信号支持信号量使用和实现
  3. 在游戏里还原自己的脸,给AI一张照片就行,网易密歇根大学出品 | AAAI 2021
  4. Redis中的Sentinel 连接使用
  5. 第三次学JAVA再学不好就吃翔(part38)--抽象类与接口的区别
  6. Chrome OS 设备或将允许用户自行选择 Linux 发行版
  7. 微软 azure_有关Microsoft Azure技术的简介和常见问题解答
  8. Python的迭代器
  9. 快速从入门到精通!mysql字符串截取前两位
  10. 数据挖掘实战—基于水色图像的水质评价
  11. 使用docker+tomcat部署jenkins
  12. 对语音通话占用带宽的理解
  13. html3d房子立体图片,如何制作3D立体图片
  14. 共享资源为目标的计算机网络的特点有,注册电气工程师考试基础试题:计算机基础知识试题答案(4)...
  15. OPNsense用户手册-基于虚拟机和云的安装
  16. 【学习记录】【python】【tkinter】自学tkinter的简要记录
  17. 软件工程计算机水平 推荐表,软件工程就业推荐表2014届.doc
  18. ruby 读取文本_使用Ruby进行文本处理
  19. 怎么用python表白_如何正确使用Python进行表白
  20. 通俗的讲,网络爬虫到底是什么?

热门文章

  1. 2018年第九届蓝桥杯 - 省赛 - C/C++大学B组 - G.螺旋折线
  2. 并查集(Union Find Set)
  3. uwsgi: error while loading shared libraries: libicui18n.so.58: cannot open shared object file
  4. 数据结构和算法 —— 谈谈算法
  5. 【机器视觉】 dev_set_paint算子
  6. 【STM32】GPIO相关函数和类型
  7. mysql子查询是什么_mysql子查询
  8. 每天一道LeetCode-----删除链表倒数第n个节点
  9. L1-005 考试座位号
  10. 操作系统P,V(wait,signal原语)操作讲解,以及两个例题(答案仅供参考)