package jetbrains.mps.tool.builder; /*Generated by MPS */ import org.apache.log4j.LogManager; import jetbrains.mps.core.tool.environment.classloading.UrlClassLoader; import jetbrains.mps.core.tool.environment.classloading.ClassloaderUtil; import java.util.ArrayList; import java.net.URL; import java.lang.reflect.Method; public class AntBootstrap { static { // This is a temporary workaround for classloading loop problem LogManager.exists("testLog"); } public AntBootstrap() { } public static void main(String[] args) { // System.setProperty(ClassloaderUtil.PROPERTY_IGNORE_CLASSPATH, ".*trove4j.*trove4j.*\\.jar"); UrlClassLoader newClassLoader = ClassloaderUtil.initClassloader(new ArrayList<URL>()); Thread.currentThread().setContextClassLoader(newClassLoader); try { Class clazz = newClassLoader.loadClass(args[0]); Method mainMethod = clazz.getDeclaredMethod("main", args.getClass()); mainMethod.setAccessible(true); String[] passedArgs = new String[args.length - 1]; System.arraycopy(args, 1, passedArgs, 0, passedArgs.length); mainMethod.invoke(null, (Object) passedArgs); } catch (Exception e) { e.printStackTrace(System.err); } System.exit(1); } }