Here you can find the source of getManifestAsString(URLClassLoader cl, String jarBaseName)
public static String getManifestAsString(URLClassLoader cl, String jarBaseName)
//package com.java2s; /*//from w w w . j a va 2s. c om * Japex software ("Software") * * Copyright, 2004-2007 Sun Microsystems, Inc. All Rights Reserved. * * Software is licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. You may * obtain a copy of the License at: * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations. * * Sun supports and benefits from the global community of open source * developers, and thanks the community for its important contributions and * open standards-based technology, which Sun has adopted into many of its * products. * * Please note that portions of Software may be provided with notices and * open source licenses from such communities and third parties that govern the * use of those portions, and any licenses granted hereunder do not alter any * rights and obligations you may have under such open source licenses, * however, the disclaimer of warranty and limitation of liability provisions * in this License will apply to all Software in this distribution. * * You acknowledge that the Software is not designed, licensed or intended * for use in the design, construction, operation or maintenance of any nuclear * facility. * * Apache License * Version 2.0, January 2004 * http://www.apache.org/licenses/ * */ import java.io.*; import java.util.*; import java.net.URL; import java.net.URLClassLoader; public class Main { public static String getManifestAsString(URLClassLoader cl, String jarBaseName) { try { Enumeration<URL> e = ((URLClassLoader) cl).findResources("META-INF/MANIFEST.MF"); while (e.hasMoreElements()) { URL url = e.nextElement(); String urlString = url.toString(); // Have we found the right jar? if (urlString.indexOf(jarBaseName) > 0) { StringBuilder sb = new StringBuilder(); int c; InputStream is = url.openStream(); while ((c = is.read()) != -1) { char ch = (char) c; sb.append(Character.isWhitespace(ch) ? ' ' : ch); } return sb.toString(); } } return ""; } catch (Exception e) { throw new RuntimeException(e); } } }