helperclassloader.java

来自「gcc的组建」· Java 代码 · 共 73 行

JAVA
73
字号
/* Copyright (C) 2005  Free Software Foundation   This file is part of libgcj.This software is copyrighted work licensed under the terms of theLibgcj License.  Please consult the file "LIBGCJ_LICENSE" fordetails.  */package gnu.gcj.runtime;import java.io.File;import java.io.FilenameFilter;import java.io.IOException;import java.net.URL;import java.net.URLClassLoader;import java.util.StringTokenizer;/** * This is a URLClassLoader that has an extra helper method for * handling things like java.ext.dirs. */class HelperClassLoader extends URLClassLoader{  HelperClassLoader()  {    super(new URL[0]);  }    HelperClassLoader(ClassLoader parent)  {    super(new URL[0], parent);  }  /**   * This is a helper method that adds all the jar and zip files from   * a given list of paths to this class loader.  The paths are taken   * from a system property whose name is provided as an argument.   */  final void addDirectoriesFromProperty(String propName)  {    StringTokenizer st      = new StringTokenizer (System.getProperty (propName, ""),			     File.pathSeparator);    try      {	while (st.hasMoreElements ())	  {	    String dirname = st.nextToken ();	    File dir = new File (dirname);            if (dir.exists ())	      {		if (! dirname.endsWith (File.separator))		  dirname = dirname + File.separator;		String files[] = dir.list (new FilenameFilter ()		  {		    public boolean accept (File dir, String name)		    {		      return name.endsWith (".jar") || name.endsWith (".zip");		    }		  });		for (int i = files.length - 1; i >= 0; i--)		  addURL(new URL("file", "", -1, dirname + files[i]));	      }	  }      }    catch (java.net.MalformedURLException x)      {	// This should never happen.	throw new RuntimeException(x);      }  }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?