private static void setupClasspath() { try { File lib = new File(System.getProperty(OPENEJB_HOME_PROPERTY_NAME) + File.separator + "lib"); SystemClassPath systemCP = new SystemClassPath(); systemCP.addJarsToPath(lib); } catch (Exception e) { System.err.println("Error setting up the classpath: " + e.getClass() + ": " + e.getMessage()); } }
public void addJarToPath(URL jar) throws Exception { this.addJarToPath(jar, getSystemLoader()); this.rebuildJavaClassPathVariable(); }
@Override public void addJarsToPath(final File dir) throws Exception { this.addJarsToPath(dir, getSystemLoader()); this.rebuildJavaClassPathVariable(); }
try { final File lib = new File(home + File.separator + "lib"); final SystemClassPath systemCP = new SystemClassPath(); File config = new File(base, "conf/catalina.properties"); if (!config.isFile()) { final File dir = new File(repository.substring(0, repository.length() - "*.jar".length())); if (dir.isDirectory()) { systemCP.addJarsToPath(dir); systemCP.addJarToPath(file.toURI().toURL()); systemCP.addJarToPath(dir.toURI().toURL()); systemCP.addJarsToPath(lib); systemCP.addJarToPath(lib.toURI().toURL());
@SuppressWarnings("checkstyle:needbraces") public static ClassPath createClassPath(final String name) { if (name.equalsIgnoreCase("tomcat")) return new TomcatClassPath(); if (name.equalsIgnoreCase("tomcat-common")) return new TomcatClassPath(); if (name.equalsIgnoreCase("tomcat-system")) return new TomcatClassPath(); if (name.equalsIgnoreCase("tomcat-webapp")) return new WebAppClassPath(); if (name.equalsIgnoreCase("bootstrap")) return new SystemClassPath(); if (name.equalsIgnoreCase("system")) return new SystemClassPath(); if (name.equalsIgnoreCase("thread")) return new ContextClassPath(); if (name.equalsIgnoreCase("context")) return new ContextClassPath(); return new ContextClassPath(); } }
private void rebuildJavaClassPathVariable() throws Exception { final URLClassLoader loader = getSystemLoader(); final Object cp = getURLClassPath(loader); final Method getURLsMethod = getGetURLsMethod(); final URL[] urls = (URL[]) getURLsMethod.invoke(cp); if (urls.length < 1) { return; } final StringBuilder path = new StringBuilder(urls.length * 32); File s = new File(URLDecoder.decode(urls[0].getFile(), "UTF-8")); path.append(s.getPath()); for (int i = 1; i < urls.length; i++) { path.append(File.pathSeparator); s = new File(URLDecoder.decode(urls[i].getFile(), "UTF-8")); path.append(s.getPath()); } try { System.setProperty("java.class.path", path.toString()); } catch (final Exception e) { // no-op } }
private void rebuildJavaClassPathVariable() throws Exception { sun.misc.URLClassPath cp = getURLClassPath(getSystemLoader()); URL[] urls = cp.getURLs(); if (urls.length < 1) return; StringBuffer path = new StringBuffer(urls.length * 32); File s = new File(URLDecoder.decode(urls[0].getFile())); path.append(s.getPath()); for (int i = 1; i < urls.length; i++) { path.append(File.pathSeparator); s = new File(URLDecoder.decode(urls[i].getFile())); path.append(s.getPath()); } try { System.setProperty("java.class.path", path.toString()); } catch (Exception e) { } } }
public ClassLoader getClassLoader() { try { return getSystemLoader(); } catch (Exception e) { throw new RuntimeException(e); } }
@Override public Method run() { try { final URLClassLoader loader = getSystemLoader(); final Object cp = getURLClassPath(loader); final Class<?> clazz = cp.getClass(); try { return clazz.getDeclaredMethod("getURLs", URL.class); } catch (final NoSuchMethodException e) { return clazz.getDeclaredMethod("getURLs"); } } catch (final Exception e) { throw new LoaderRuntimeException(e); } }
public void addJarsToPath(File dir) throws Exception { this.addJarsToPath(dir, getSystemLoader()); this.rebuildJavaClassPathVariable(); }
@SuppressWarnings("checkstyle:needbraces") public static ClassPath createClassPath(final String name) { if (name.equalsIgnoreCase("tomcat")) return new TomcatClassPath(); if (name.equalsIgnoreCase("tomcat-common")) return new TomcatClassPath(); if (name.equalsIgnoreCase("tomcat-system")) return new TomcatClassPath(); if (name.equalsIgnoreCase("tomcat-webapp")) return new WebAppClassPath(); if (name.equalsIgnoreCase("bootstrap") && isSystemSupported()) return new SystemClassPath(); if (name.equalsIgnoreCase("system") && isSystemSupported()) return new SystemClassPath(); if (name.equalsIgnoreCase("thread")) return new ContextClassPath(); if (name.equalsIgnoreCase("context")) return new ContextClassPath(); return new ContextClassPath(); }
private void rebuildJavaClassPathVariable() throws Exception { final URLClassLoader loader = getSystemLoader(); final Object cp = getURLClassPath(loader); final Method getURLsMethod = getGetURLsMethod(); final URL[] urls = (URL[]) getURLsMethod.invoke(cp); if (urls.length < 1) { return; } final StringBuilder path = new StringBuilder(urls.length * 32); File s = new File(URLDecoder.decode(urls[0].getFile(), "UTF-8")); path.append(s.getPath()); for (int i = 1; i < urls.length; i++) { path.append(File.pathSeparator); s = new File(URLDecoder.decode(urls[i].getFile(), "UTF-8")); path.append(s.getPath()); } try { System.setProperty("java.class.path", path.toString()); } catch (final Exception e) { // no-op } }
@Override public ClassLoader getClassLoader() { try { return getSystemLoader(); } catch (final Exception e) { throw new LoaderRuntimeException(e); } }
@Override public Method run() { try { final URLClassLoader loader = getSystemLoader(); final Object cp = getURLClassPath(loader); final Class<?> clazz = cp.getClass(); try { return clazz.getDeclaredMethod("getURLs", URL.class); } catch (final NoSuchMethodException e) { return clazz.getDeclaredMethod("getURLs"); } } catch (final Exception e) { throw new LoaderRuntimeException(e); } }
@Override public void addJarsToPath(final File dir) throws Exception { this.addJarsToPath(dir, getSystemLoader()); if (getSystemLoader() == ClassLoader.getSystemClassLoader()) { this.rebuildJavaClassPathVariable(); } }
@Override public void addJarToPath(final URL jar) throws Exception { this.addJarToPath(jar, getSystemLoader()); this.rebuildJavaClassPathVariable(); }
public static ClassPath createClassPath(String name) { if (name.equalsIgnoreCase("tomcat")) { return new TomcatClassPath(); } else if (name.equalsIgnoreCase("tomcat-common")) { return new TomcatClassPath(); } else if (name.equalsIgnoreCase("tomcat-system")) { return new TomcatClassPath(); } else if (name.equalsIgnoreCase("tomcat-webapp")) { return new WebAppClassPath(); } else if (name.equalsIgnoreCase("bootstrap")) { return new SystemClassPath(); } else if (name.equalsIgnoreCase("system")) { return new SystemClassPath(); } else if (name.equalsIgnoreCase("thread")) { return new ContextClassPath(); } else if (name.equalsIgnoreCase("context")) { return new ContextClassPath(); } else { return new ContextClassPath(); } } }
@Override public ClassLoader getClassLoader() { try { return getSystemLoader(); } catch (final Exception e) { throw new LoaderRuntimeException(e); } }
@Override public void addJarToPath(final URL jar) throws Exception { this.addJarToPath(jar, getSystemLoader()); if (getSystemLoader() == ClassLoader.getSystemClassLoader()) { this.rebuildJavaClassPathVariable(); } }
try { final File lib = new File(home + File.separator + "lib"); final ClassPath systemCP = new SystemClassPath(); systemCP.getClassLoader(); File config = new File(base, "conf/catalina.properties");