Program: 177318
Project: 177318
Buggy source:
@Override public synchronized Plugin loadPlugin(File paramFile,boolean ignoresoftdepends) throws InvalidPluginException, UnknownDependencyException, InvalidDescriptionFileException {
  CommonPlugin result;
  PluginDescriptionFile desc;
  CommonClassLoader loader;
  desc=getDescription(paramFile);
  File dataFolder=new File(paramFile.getParentFile(),desc.getName());
  processDependencies(desc);
  if (!ignoresoftdepends) {
    processSoftDependencies(desc);
  }
  try {
    if (engine.getPlatform() == Platform.CLIENT) {
      loader=new ClientClassLoader(this,this.getClass().getClassLoader());
    }
 else {
      loader=new CommonClassLoader(this,this.getClass().getClassLoader());
    }
    loader.addURL(paramFile.toURI().toURL());
    Class<?> main=Class.forName(desc.getMain(),true,loader);
    Class<? extends CommonPlugin> plugin=main.asSubclass(CommonPlugin.class);
    boolean locked=manager.lock(key);
    Constructor<? extends CommonPlugin> constructor=plugin.getConstructor();
    result=constructor.newInstance();
    result.initialize(this,engine,desc,dataFolder,paramFile,loader);
    if (!locked) {
      manager.unlock(key);
    }
  }
 catch (  Exception e) {
    throw new InvalidPluginException(e);
  }
catch (  UnsupportedClassVersionError e) {
    String version=e.getMessage().replaceFirst("String_Node_Str","String_Node_Str").split("String_Node_Str")[0];
    Spout.getLogger().severe("String_Node_Str" + desc.getName() + "String_Node_Str");
    Spout.getLogger().severe("String_Node_Str" + desc.getName() + "String_Node_Str"+ version+ "String_Node_Str");
  }
  loader.setPlugin(result);
  loaders.put(desc.getName(),loader);
  return result;
}

Fixed version (ground truth):
@Override public synchronized Plugin loadPlugin(File paramFile,boolean ignoresoftdepends) throws InvalidPluginException, UnknownDependencyException, InvalidDescriptionFileException {
  CommonPlugin result;
  PluginDescriptionFile desc;
  CommonClassLoader loader;
  desc=getDescription(paramFile);
  File dataFolder=new File(paramFile.getParentFile(),desc.getName());
  processDependencies(desc);
  if (!ignoresoftdepends) {
    processSoftDependencies(desc);
  }
  try {
    if (engine.getPlatform() == Platform.CLIENT) {
      loader=new ClientClassLoader(this,this.getClass().getClassLoader());
    }
 else {
      loader=new CommonClassLoader(this,this.getClass().getClassLoader());
    }
    loader.addURL(paramFile.toURI().toURL());
    Class<?> main=Class.forName(desc.getMain(),true,loader);
    Class<? extends CommonPlugin> plugin=main.asSubclass(CommonPlugin.class);
    boolean locked=manager.lock(key);
    Constructor<? extends CommonPlugin> constructor=plugin.getConstructor();
    result=constructor.newInstance();
    result.initialize(this,engine,desc,dataFolder,paramFile,loader);
    if (!locked) {
      manager.unlock(key);
    }
  }
 catch (  Exception e) {
    throw new InvalidPluginException(e);
  }
catch (  UnsupportedClassVersionError e) {
    String version=e.getMessage().replaceFirst("String_Node_Str","String_Node_Str").split("String_Node_Str")[0];
    Spout.getLogger().severe("String_Node_Str" + desc.getName() + "String_Node_Str");
    Spout.getLogger().severe("String_Node_Str" + desc.getName() + "String_Node_Str"+ version+ "String_Node_Str");
    throw new InvalidPluginException(e);
  }
  loader.setPlugin(result);
  loaders.put(desc.getName(),loader);
  return result;
}