Examples of LaunchClassLoader


Examples of net.minecraft.launchwrapper.LaunchClassLoader

            return false;
        }
    }

    private void loadFiles(File file) throws MalformedURLException {
        LaunchClassLoader classLoader = (LaunchClassLoader) this.getClass().getClassLoader();
        classLoader.addURL(file.toURI().toURL());
        denLibCore.print("Loaded library " + file.getName());
    }
View Full Code Here

Examples of net.minecraft.launchwrapper.LaunchClassLoader

        "after:ThermalExpansion;" +
        "after:BetterStorage")
public class LogisticsPipes {

  public LogisticsPipes() {
    LaunchClassLoader loader = Launch.classLoader;
    boolean found = false;
    for(IClassTransformer transformer:loader.getTransformers()) {
      if(transformer.getClass().getName().equals("logisticspipes.asm.LogisticsClassTransformer")) {
        found = true;
        break;
      }
    }
    if(!found) {
      throw new RuntimeException("LogisticsPipes could not find its class transformer. If you are running MC from an IDE make sure to copy the 'LogisticsPipes_dummy.jar' to your mods folder. If you are running MC normal please report this as a bug at 'https://github.com/RS485/LogisticsPipes/issues'.");
    }
    try {
      Field fTransformers = LaunchClassLoader.class.getDeclaredField("transformers");
      fTransformers.setAccessible(true);
      @SuppressWarnings("unchecked")
      List<IClassTransformer> transformers = (List<IClassTransformer>) fTransformers.get(loader);
      IClassTransformer lpClassInjector = new LogisticsPipesClassInjector();
      transformers.add(lpClassInjector);
      // Avoid NPE caused by wrong ClassTransformers
      for(int i=transformers.size() - 1 ; i > 0;i--) { // Move everything one up
        transformers.set(i, transformers.get(i - 1));
      }
      transformers.set(0, lpClassInjector); // So that our injector can be first
    } catch(NoSuchFieldException e) {
      loader.registerTransformer("logisticspipes.asm.LogisticsPipesClassInjector");
      e.printStackTrace();
    } catch(SecurityException e) {
      loader.registerTransformer("logisticspipes.asm.LogisticsPipesClassInjector");
      e.printStackTrace();
    } catch(IllegalArgumentException e) {
      loader.registerTransformer("logisticspipes.asm.LogisticsPipesClassInjector");
      e.printStackTrace();
    } catch(IllegalAccessException e) {
      loader.registerTransformer("logisticspipes.asm.LogisticsPipesClassInjector");
      e.printStackTrace();
    }
    PacketHandler.initialize();
    NewGuiHandler.initialize();
  }
View Full Code Here

Examples of net.minecraft.launchwrapper.LaunchClassLoader

    Field mcDir = CoreModManager.class.getDeclaredField("mcDir");
    mcDir.setAccessible(true);
    Field transformers = LaunchClassLoader.class.getDeclaredField("transformers");
    transformers.setAccessible(true);
   
    LaunchClassLoader classLoader = Launch.classLoader;
   
    FMLRelaunchLog.fine("Discovering coremods");
    File coreMods = (File)setupCoreModDir.invoke(null, mcDir.get(null));
    FilenameFilter ff = new FilenameFilter() {
      @Override
      public boolean accept(File dir, String name) {
        return name.endsWith(".jar");
      }
    };
    File[] FMLcoreModListArray = coreMods.listFiles(ff);
    File versionedModDir = new File(coreMods, "1.7.10");
    if(versionedModDir.isDirectory()) {
      File[] versionedCoreMods = versionedModDir.listFiles(ff);
      FMLcoreModListArray = ObjectArrays.concat(FMLcoreModListArray, versionedCoreMods, File.class);
    }
   
    List<String> FMLcoreModList = new ArrayList<String>();
   
    for(File f:FMLcoreModListArray) {
      FMLcoreModList.add(f.getName());
    }

    List<File> coreModList = new ArrayList<File>();
   
    for(URL path:classLoader.getURLs()) {
      File file = new File(URLDecoder.decode(path.getFile()));
      if(!FMLcoreModList.contains(file.getName()) && file.getName().endsWith(".jar")) {
        coreModList.add(file);
      }
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.