即使我不使用其中包含的任何类,添加jar来构建路径如何影响代码

时间:2013-05-08 22:53:19

标签: java dicom

我有一种情况是将.dic文件(DICOM:医学格式的数字成像和通信)添加到swing java应用程序中,我有Dicom.jar来识别{ {1}} 一些推广

一旦我添加了.dic来构建路径,当我从中移除jar时代码正常运行 构建路径代码中没有任何错误(我从未使用Dicom.jar中包含的任何类)

但我很困惑,如果代码不使用任何类,代码如何识别Dicom.jar

提前致谢:)

2 个答案:

答案 0 :(得分:2)

Dicom可能使用称为SPI(服务提供程序接口)的方法。这个link提供了很好的解释。

此方法用于图像,也用于sound,您可以在需要时创建自己的SPI。

答案 1 :(得分:1)

理解正在发生的事情的关键是“动态类加载”。应用程序使用的运行时库中的某些东西是从该JAR文件中查找和加载类。

这很有可能发生,因为Dicom提供的代码符合执行此类操作的Java标准库的一个子系统所使用的SPI机制。 (Java库中有一些SPI实例。)

Dicom还可以通过其他方式与其他第三方代码进行互动;例如通过第三方SPI或老式的“将类名放入属性文件”机制。