String targetIcon = task.getIcon() != null && task.getIcon().isFile() ? new File(resourcesDir, task.getIcon().getName()).getAbsolutePath() : "";
String targetIcon = task.getIcon() != null && task.getIcon().isFile() ? task.getIcon().getName() : "";
	void copyInfoPlist() throws BuildException {		File targetInfoPlist = new File(contentsDir, "Info.plist");		String targetIcon = task.getIcon() != null && task.getIcon().isFile() ? new File(resourcesDir, task.getIcon().getName()).getAbsolutePath() : "";		String jvmOptions = task.getJvmOptions() != null ? task.getJvmOptions() : "";		StringBuffer jars = new StringBuffer();		String[] jarFiles = javaDir.list(new FilenameFilter() {			public boolean accept(File dir, String name) {				return name.endsWith(".jar");			}		});		for (int i = 0; i < jarFiles.length; i++) {			jars.append("          <string>\\$JAVAROOT/").append(jarFiles[i]).append("</string>\n");		}		Map tokens = new HashMap();		tokens.put("@NAME@", task.getName());		tokens.put("@VERSION@", task.getVersion());		tokens.put("@LONG_NAME@", task.getLongName());		tokens.put("@MAIN_CLASS@", task.getMainClass());		tokens.put("@VERSION@", task.getVersion());		tokens.put("@ICON@", targetIcon);		tokens.put("@JVM@", task.getJvm());		tokens.put("@JVM_OPTIONS@", jvmOptions);		tokens.put("@JARS@", jars.toString());		new TokenFilter(tokens).copy("japplication/mac/Info.plist", targetInfoPlist);	}