private static void copyReferencedFiles( ProductConfiguration productConfiguration, File sourceDir, File targetDir) throws IOException { Launcher launcher = productConfiguration.getLauncher(); List<String> relativePaths = new ArrayList<String>(); if (launcher != null) { relativePaths.addAll(launcher.getLinuxIcon().values()); relativePaths.addAll(launcher.getWindowsIcon().values()); relativePaths.addAll(launcher.getSolarisIcon().values()); relativePaths.addAll(launcher.getMacosxIcon().values()); } ConfigIni configIni = productConfiguration.getConfigIni(); if (configIni != null) { relativePaths.add(configIni.getLinuxConfigIni()); relativePaths.add(configIni.getWin32ConfigIni()); relativePaths.add(configIni.getSolarisConfigIni()); relativePaths.add(configIni.getMacosxConfigIni()); } copyFiles(sourceDir, targetDir, relativePaths); }