try { players.add(Class.forName("irate.client.StreamPlayer").newInstance()); } catch (Exception e) { e.printStackTrace(); }
  public PlayerList() {    Vector players = new Vector();        try {    	//seems like reflection of classes with unknown members is nicely broken in gcj    	if(System.getProperty("java.vm.name").indexOf("gcj") == -1)      		players.add(Class.forName("irate.client.JavaLayerPlayer").newInstance());    }     catch (Exception e) {    	e.printStackTrace();    }        try {      players.add(Class.forName("irate.client.MadplayPlayer").newInstance());      //players.add(new MadplayPlayer());    }    catch (Exception e) {      e.printStackTrace();    }        try {      players.add(Class.forName("irate.client.MadplayEsdPlayer").newInstance());      //players.add(new MadplayPlayer());    }    catch (Exception e) {      e.printStackTrace();    }        try {      players.add(Class.forName("irate.client.StreamPlayer").newInstance());    }    catch (Exception e) {      e.printStackTrace();    }    this.players = (Player[]) players.toArray(new Player[players.size()]);  }