gpt4 book ai didi

java - 从资源位置读取 jar 文件

转载 作者:行者123 更新时间:2023-12-02 07:44:19 25 4
gpt4 key购买 nike

在我的应用程序中,我必须读取磁盘位置中可用的 jar 文件,并将 .classes 文件与 jar 分离。

代码是

     JarFile jarFile = new JarFile("./resources/CD.jar");

for(Enumeration<JarEntry> em = jarFile.entries(); em.hasMoreElements();) {
String s= em.nextElement().toString();
ZipEntry entry = jarFile.getEntry(s);

String fileName = s.substring(s.lastIndexOf("/")+1, s.length());
if(fileName.endsWith(".class")){
System.out.println(fileName);
}

但我收到错误

java.io.FileNotFoundException: .\resources\CD.jar (The system cannot find the path specified).

最佳答案

我找到了解决问题的方法:

  1. 将“资源”位置添加到类路径
  2. 允许外部服务 API 将 cd.jar 放置在资源位置
  3. 使用子类加载器将 cd.jar 添加到类路径中代码片段如下:

    URLClassLoader childLoader = new URLClassLoader(new URL[] { getURLOfTestclass() },  this.getClass().getClassLoader());

    URL url = getClass().getClassLoader().getResource("CD.jar");
    return url;

关于java - 从资源位置读取 jar 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30795956/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com