Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/312.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 何时使用自定义类加载代码而不是在manifest.mf文件中定义类路径?_Java_Classloader - Fatal编程技术网

Java 何时使用自定义类加载代码而不是在manifest.mf文件中定义类路径?

Java 何时使用自定义类加载代码而不是在manifest.mf文件中定义类路径?,java,classloader,Java,Classloader,假设我们想将Java应用程序打包成一个jar文件(包括依赖项)。依赖项被复制到一个单独的目录中(比如libs/)。我读过两种让java启动器找到这些类的方法: 1) 实现一个自定义类加载器代码(加载器/启动器模式),该代码将在执行应用程序的主代码之前加载必要的类(如下所述:) 2) 将libs/目录添加到meta inf/manifest.fm中的“Class Path:”头中 哪个解决方案更好?为什么?您考虑过在命令行上指定的类路径中添加额外的类吗?在选择自定义类加载技巧之前,值得考虑所有其他

假设我们想将Java应用程序打包成一个jar文件(包括依赖项)。依赖项被复制到一个单独的目录中(比如libs/)。我读过两种让java启动器找到这些类的方法:

1) 实现一个自定义类加载器代码(加载器/启动器模式),该代码将在执行应用程序的主代码之前加载必要的类(如下所述:)

2) 将libs/目录添加到meta inf/manifest.fm中的“Class Path:”头中


哪个解决方案更好?为什么?

您考虑过在命令行上指定的类路径中添加额外的类吗?在选择自定义类加载技巧之前,值得考虑所有其他选项。清单中的类路径行简单明了,多年来一直是Java标准。我认为没有理由重新发明这种功能。