List of usage examples for org.apache.maven.execution MavenExecutionRequest setLoggingLevel
MavenExecutionRequest setLoggingLevel(int loggingLevel);
From source file:ead.exporter.ApkExporter.java
License:Open Source License
@Override public void export(String gameBaseDir, String outputfolder) { if (packageName == null) { logger.error("app name is not set or is invalid. Apk exportation failed."); return;/*from w w w.jav a 2 s . c o m*/ } // Create a temp folder to generate de apk File gameFolder = new File(gameBaseDir); String tempFolder = System.getProperty("java.io.tmpdir"); File apkTemp = new File( tempFolder + File.separator + "eAdventureApkTemp" + Math.round(Math.random() * 1000)); apkTemp.mkdirs(); File manifestFile = createManifest(apkTemp); File apkAssets = createAssetsFolder(apkTemp, gameFolder); File apkResources = createResourcesFolder(apkTemp); // Copy native libs folder try { FileUtils.copyDirectoryStructure(new File("../../resources/nativelibs"), apkTemp); } catch (IOException e) { } // Copy and load pom file File pomFile = createPomFile(apkTemp); MavenExecutionRequest request = new DefaultMavenExecutionRequest(); // Goals File f = new File(apkTemp, "/target/classes"); f.mkdirs(); ArrayList<String> goals = new ArrayList<String>(); goals.add("clean"); goals.add("install"); if (runInDevice) { goals.add("android:deploy"); goals.add("android:run"); } request.setGoals(goals); // Properties Properties userProperties = new Properties(); userProperties.setProperty("game.basedir", gameBaseDir); userProperties.setProperty("game.outputfolder", outputfolder); userProperties.setProperty("game.name", appName); userProperties.setProperty("ead.packagename", packageName); userProperties.setProperty("eadmanifestdir", manifestFile.getAbsolutePath()); userProperties.setProperty("ead.tempfile", apkTemp.getAbsolutePath()); userProperties.setProperty("ead.assets", apkAssets.getAbsolutePath()); userProperties.setProperty("ead.resources", apkResources.getAbsolutePath()); request.setUserProperties(userProperties); // Set files request.setBaseDirectory(apkTemp); request.setPom(pomFile); // Execute maven request.setLoggingLevel(org.codehaus.plexus.logging.Logger.LEVEL_ERROR); MavenExecutionResult result = maven.execute(request); for (Throwable e : result.getExceptions()) { logger.warn("{}", e); } // Copy apk to destination File apk = new File(apkTemp, "target/" + packageName + ".apk"); File apkDst = new File(outputfolder, packageName + ".apk"); try { FileUtils.copyFile(apk, apkDst); } catch (IOException e1) { } // Delete temp folder try { FileUtils.deleteDirectory(apkTemp); } catch (IOException e) { logger.warn("Apk assets temp folder was not deleted {}", e); } }
From source file:hudson.maven.MavenEmbedder.java
License:Apache License
protected MavenExecutionRequest buildMavenExecutionRequest(MavenRequest mavenRequest) throws MavenEmbedderException, ComponentLookupException { MavenExecutionRequest mavenExecutionRequest = new DefaultMavenExecutionRequest(); if (mavenRequest.getGlobalSettingsFile() != null) { mavenExecutionRequest.setGlobalSettingsFile(new File(mavenRequest.getGlobalSettingsFile())); }/*from ww w . j a v a 2s .c o m*/ if (mavenExecutionRequest.getUserSettingsFile() != null) { mavenExecutionRequest.setUserSettingsFile(new File(mavenRequest.getUserSettingsFile())); } try { lookup(MavenExecutionRequestPopulator.class).populateFromSettings(mavenExecutionRequest, getSettings()); lookup(MavenExecutionRequestPopulator.class).populateDefaults(mavenExecutionRequest); } catch (MavenExecutionRequestPopulationException e) { throw new MavenEmbedderException(e.getMessage(), e); } ArtifactRepository localRepository = getLocalRepository(); mavenExecutionRequest.setLocalRepository(localRepository); mavenExecutionRequest.setLocalRepositoryPath(localRepository.getBasedir()); mavenExecutionRequest.setOffline(mavenRequest.isOffline()); mavenExecutionRequest.setUpdateSnapshots(mavenRequest.isUpdateSnapshots()); // TODO check null and create a console one ? mavenExecutionRequest.setTransferListener(mavenRequest.getTransferListener()); mavenExecutionRequest.setCacheNotFound(mavenRequest.isCacheNotFound()); mavenExecutionRequest.setCacheTransferError(true); mavenExecutionRequest.setUserProperties(mavenRequest.getUserProperties()); mavenExecutionRequest.getSystemProperties().putAll(System.getProperties()); if (mavenRequest.getSystemProperties() != null) { mavenExecutionRequest.getSystemProperties().putAll(mavenRequest.getSystemProperties()); } mavenExecutionRequest.getSystemProperties().putAll(getEnvVars()); if (this.mavenHome != null) { mavenExecutionRequest.getSystemProperties().put("maven.home", this.mavenHome.getAbsolutePath()); } if (mavenRequest.getProfiles() != null && !mavenRequest.getProfiles().isEmpty()) { for (String id : mavenRequest.getProfiles()) { Profile p = new Profile(); p.setId(id); p.setSource("cli"); mavenExecutionRequest.addProfile(p); mavenExecutionRequest.addActiveProfile(id); } } mavenExecutionRequest.setLoggingLevel(mavenRequest.getLoggingLevel()); lookup(Logger.class).setThreshold(mavenRequest.getLoggingLevel()); mavenExecutionRequest.setExecutionListener(mavenRequest.getExecutionListener()) .setInteractiveMode(mavenRequest.isInteractive()) .setGlobalChecksumPolicy(mavenRequest.getGlobalChecksumPolicy()).setGoals(mavenRequest.getGoals()); if (mavenRequest.getPom() != null) { mavenExecutionRequest.setPom(new File(mavenRequest.getPom())); } if (mavenRequest.getWorkspaceReader() != null) { mavenExecutionRequest.setWorkspaceReader(mavenRequest.getWorkspaceReader()); } // FIXME inactive profiles //this.mavenExecutionRequest.set return mavenExecutionRequest; }
From source file:org.appformer.maven.integration.embedder.MavenEmbedder.java
License:Apache License
protected MavenExecutionRequest buildMavenExecutionRequest(MavenRequest mavenRequest) throws MavenEmbedderException, ComponentLookupException { MavenExecutionRequest mavenExecutionRequest = new DefaultMavenExecutionRequest(); if (mavenRequest.getGlobalSettingsFile() != null) { mavenExecutionRequest.setGlobalSettingsFile(new File(mavenRequest.getGlobalSettingsFile())); }/*from w w w . j a va 2 s.c o m*/ SettingsSource userSettings = mavenRequest.getUserSettingsSource(); if (userSettings != null) { if (userSettings instanceof FileSettingsSource) { mavenExecutionRequest.setUserSettingsFile(((FileSettingsSource) userSettings).getSettingsFile()); } else { try { mavenExecutionRequest.setUserSettingsFile(copyInTempFile(userSettings.getInputStream(), "xml")); } catch (IOException ioe) { log.warn("Unable to use maven settings defined in " + userSettings, ioe); } } } try { componentProvider.lookup(MavenExecutionRequestPopulator.class) .populateFromSettings(mavenExecutionRequest, getSettings()); componentProvider.lookup(MavenExecutionRequestPopulator.class).populateDefaults(mavenExecutionRequest); } catch (MavenExecutionRequestPopulationException e) { throw new MavenEmbedderException(e.getMessage(), e); } ArtifactRepository localRepository = getLocalRepository(); mavenExecutionRequest.setLocalRepository(localRepository); mavenExecutionRequest.setLocalRepositoryPath(localRepository.getBasedir()); mavenExecutionRequest.setOffline(mavenRequest.isOffline()); mavenExecutionRequest.setUpdateSnapshots(mavenRequest.isUpdateSnapshots()); // TODO check null and create a console one ? mavenExecutionRequest.setTransferListener(mavenRequest.getTransferListener()); mavenExecutionRequest.setCacheNotFound(mavenRequest.isCacheNotFound()); mavenExecutionRequest.setCacheTransferError(true); mavenExecutionRequest.setUserProperties(mavenRequest.getUserProperties()); mavenExecutionRequest.getSystemProperties().putAll(System.getProperties()); if (mavenRequest.getSystemProperties() != null) { mavenExecutionRequest.getSystemProperties().putAll(mavenRequest.getSystemProperties()); } mavenExecutionRequest.getSystemProperties().putAll(getEnvVars()); if (mavenRequest.getProfiles() != null && !mavenRequest.getProfiles().isEmpty()) { for (String id : mavenRequest.getProfiles()) { Profile p = new Profile(); p.setId(id); p.setSource("cli"); mavenExecutionRequest.addProfile(p); mavenExecutionRequest.addActiveProfile(id); } } MavenRepositoryConfiguration mavenRepoConf = getMavenRepositoryConfiguration(); //DROOLS-899: Copy repositories defined in settings to execution request for (ArtifactRepository artifactRepository : mavenRepoConf.getArtifactRepositoriesForRequest()) { mavenExecutionRequest.addRemoteRepository(artifactRepository); } mavenExecutionRequest.setProxies(mavenRepoConf.getProxies()); mavenExecutionRequest.setLoggingLevel(mavenRequest.getLoggingLevel()); componentProvider.lookup(Logger.class).setThreshold(mavenRequest.getLoggingLevel()); mavenExecutionRequest.setExecutionListener(mavenRequest.getExecutionListener()) .setInteractiveMode(mavenRequest.isInteractive()) .setGlobalChecksumPolicy(mavenRequest.getGlobalChecksumPolicy()).setGoals(mavenRequest.getGoals()); if (mavenRequest.getPom() != null) { mavenExecutionRequest.setPom(new File(mavenRequest.getPom())); } if (mavenRequest.getWorkspaceReader() != null) { mavenExecutionRequest.setWorkspaceReader(mavenRequest.getWorkspaceReader()); } return mavenExecutionRequest; }
From source file:org.jvnet.hudson.plugins.mavendepsupdate.MavenUpdateChecker.java
License:Apache License
ProjectBuildingRequest getProjectBuildingRequest(Properties userProperties, PlexusContainer plexusContainer) throws ComponentLookupException, SettingsBuildingException, MavenExecutionRequestPopulationException, InvalidRepositoryException {/*from ww w . j a v a2s . co m*/ MavenExecutionRequest request = new DefaultMavenExecutionRequest(); request.setLoggingLevel(MavenExecutionRequest.LOGGING_LEVEL_DEBUG); request.setWorkspaceReader(new ReactorReader(new HashMap<String, MavenProject>(0))); SettingsBuilder settingsBuilder = plexusContainer.lookup(SettingsBuilder.class); RepositorySystem repositorySystem = plexusContainer.lookup(RepositorySystem.class); org.sonatype.aether.RepositorySystem repoSystem = plexusContainer .lookup(org.sonatype.aether.RepositorySystem.class); SettingsBuildingRequest settingsRequest = new DefaultSettingsBuildingRequest(); if (globalSettings != null) { mavenUpdateCheckerResult.addDebugLine("globalSettings " + globalSettings.getRemote()); settingsRequest.setGlobalSettingsFile(new File(globalSettings.getRemote())); } else { File globalSettings = new File(mavenHome, "conf/settings.xml"); if (globalSettings.exists()) { settingsRequest.setGlobalSettingsFile(globalSettings); } } if (alternateSettings != null) { mavenUpdateCheckerResult.addDebugLine("alternateSettings " + alternateSettings.getRemote()); settingsRequest.setUserSettingsFile(new File(alternateSettings.getRemote())); request.setUserSettingsFile(new File(alternateSettings.getRemote())); } else { File defaultUserSettings = new File(new File(System.getProperty("user.home"), ".m2"), "settings.xml"); settingsRequest.setUserSettingsFile(defaultUserSettings); request.setUserSettingsFile(defaultUserSettings); } settingsRequest.setSystemProperties(System.getProperties()); settingsRequest.setUserProperties(userProperties); SettingsBuildingResult settingsBuildingResult = settingsBuilder.build(settingsRequest); MavenExecutionRequestPopulator executionRequestPopulator = plexusContainer .lookup(MavenExecutionRequestPopulator.class); executionRequestPopulator.populateFromSettings(request, settingsBuildingResult.getEffectiveSettings()); executionRequestPopulator.populateDefaults(request); MavenRepositorySystemSession session = new MavenRepositorySystemSession(); session.setUpdatePolicy(RepositoryPolicy.UPDATE_POLICY_ALWAYS); SnapshotTransfertListener snapshotTransfertListener = new SnapshotTransfertListener(this.lastBuildTime); session.setTransferListener(snapshotTransfertListener); LocalRepository localRepo = getLocalRepo(settingsBuildingResult); session.setLocalRepositoryManager(repoSystem.newLocalRepositoryManager(localRepo)); ArtifactRepository localArtifactRepository = getLocalArtifactRepo(settingsBuildingResult, repositorySystem); request.setLocalRepository(localArtifactRepository); if (this.activeProfiles != null && !this.activeProfiles.isEmpty()) { for (String id : this.activeProfiles) { Profile p = new Profile(); p.setId(id); p.setSource("cli"); request.addProfile(p); request.addActiveProfile(id); } } ProjectBuildingRequest projectBuildingRequest = request.getProjectBuildingRequest(); return projectBuildingRequest.setRepositorySession(session); }
From source file:org.kie.scanner.embedder.MavenEmbedder.java
License:Apache License
protected MavenExecutionRequest buildMavenExecutionRequest(MavenRequest mavenRequest) throws MavenEmbedderException, ComponentLookupException { MavenExecutionRequest mavenExecutionRequest = new DefaultMavenExecutionRequest(); if (mavenRequest.getGlobalSettingsFile() != null) { mavenExecutionRequest.setGlobalSettingsFile(new File(mavenRequest.getGlobalSettingsFile())); }//from w w w. java2s .c o m if (mavenExecutionRequest.getUserSettingsFile() != null) { mavenExecutionRequest.setUserSettingsFile(new File(mavenRequest.getUserSettingsFile())); } try { lookup(MavenExecutionRequestPopulator.class).populateFromSettings(mavenExecutionRequest, getSettings()); lookup(MavenExecutionRequestPopulator.class).populateDefaults(mavenExecutionRequest); } catch (MavenExecutionRequestPopulationException e) { throw new MavenEmbedderException(e.getMessage(), e); } ArtifactRepository localRepository = getLocalRepository(); mavenExecutionRequest.setLocalRepository(localRepository); mavenExecutionRequest.setLocalRepositoryPath(localRepository.getBasedir()); mavenExecutionRequest.setOffline(mavenRequest.isOffline()); mavenExecutionRequest.setUpdateSnapshots(mavenRequest.isUpdateSnapshots()); // TODO check null and create a console one ? mavenExecutionRequest.setTransferListener(mavenRequest.getTransferListener()); mavenExecutionRequest.setCacheNotFound(mavenRequest.isCacheNotFound()); mavenExecutionRequest.setCacheTransferError(true); mavenExecutionRequest.setUserProperties(mavenRequest.getUserProperties()); mavenExecutionRequest.getSystemProperties().putAll(System.getProperties()); if (mavenRequest.getSystemProperties() != null) { mavenExecutionRequest.getSystemProperties().putAll(mavenRequest.getSystemProperties()); } mavenExecutionRequest.getSystemProperties().putAll(getEnvVars()); if (this.mavenHome != null) { mavenExecutionRequest.getSystemProperties().put("maven.home", this.mavenHome.getAbsolutePath()); } if (mavenRequest.getProfiles() != null && !mavenRequest.getProfiles().isEmpty()) { for (String id : mavenRequest.getProfiles()) { Profile p = new Profile(); p.setId(id); p.setSource("cli"); mavenExecutionRequest.addProfile(p); mavenExecutionRequest.addActiveProfile(id); } } mavenExecutionRequest.setLoggingLevel(mavenRequest.getLoggingLevel()); lookup(Logger.class).setThreshold(mavenRequest.getLoggingLevel()); mavenExecutionRequest.setExecutionListener(mavenRequest.getExecutionListener()) .setInteractiveMode(mavenRequest.isInteractive()) .setGlobalChecksumPolicy(mavenRequest.getGlobalChecksumPolicy()).setGoals(mavenRequest.getGoals()); if (mavenRequest.getPom() != null) { mavenExecutionRequest.setPom(new File(mavenRequest.getPom())); } if (mavenRequest.getWorkspaceReader() != null) { mavenExecutionRequest.setWorkspaceReader(mavenRequest.getWorkspaceReader()); } return mavenExecutionRequest; }
From source file:org.universaal.tools.packaging.tool.gui.GUI.java
License:Apache License
public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException { monitor.beginTask("Generating Effective POM", IProgressMonitor.UNKNOWN); monitor.subTask("part: " + partName); if (EclipsePreferencesConfigurator.local.runMavenEmbedded()) { IMavenProjectRegistry projectManager = MavenPlugin.getMavenProjectRegistry(); IFile pomResource = part.getFile(IMavenConstants.POM_FILE_NAME); IMavenProjectFacade projectFacade = projectManager.create(pomResource, true, null); IMaven maven = MavenPlugin.getMaven(); if (pomResource != null && projectFacade != null) { MavenExecutionRequest request; try { request = projectManager.createExecutionRequest(pomResource, projectFacade.getResolverConfiguration(), null); request.setLoggingLevel(EclipsePreferencesConfigurator.local.getLogLevel()); List<String> goals = new ArrayList<String>(); Properties props = new Properties(); props.setProperty("output", mavenTempDir + "/" + partName + ".epom.xml"); goals.add("help:effective-pom"); request.setGoals(goals); request.setUserProperties(props); MavenExecutionResult execution_result = maven.execute(request, null); if (execution_result.getExceptions() == null || execution_result.getExceptions().isEmpty()) { GUI.getInstance().exitLevel = 0; }/*w ww.j a v a 2 s . com*/ } catch (Exception e) { e.printStackTrace(); } } } else { GUI.getInstance().exitLevel = ProcessExecutor.runMavenCommand( "\"-Doutput=" + mavenTempDir + "/" + partName + ".epom.xml" + "\" help:effective-pom", path); } monitor.done(); }
From source file:org.universaal.tools.packaging.tool.util.KarafFeaturesGenerator.java
License:Apache License
private boolean generateKarafFeatures(String projectName) { try {/*from ww w .ja v a 2 s .com*/ IMavenProjectRegistry projectManager = MavenPlugin.getMavenProjectRegistry(); IFile pomResource = g.getPart(projectName).getFile(IMavenConstants.POM_FILE_NAME); IMavenProjectFacade projectFacade = projectManager.create(pomResource, true, null); String ProjectPath = g.getPart(projectName).getLocation().toString(); IMaven maven = MavenPlugin.getMaven(); if (pomResource != null && projectFacade != null) { IWorkspace workspace = ResourcesPlugin.getWorkspace(); IWorkspaceDescription description = workspace.getDescription(); if (EclipsePreferencesConfigurator.local.runMavenEmbedded()) { MavenExecutionRequest request = projectManager.createExecutionRequest(pomResource, projectFacade.getResolverConfiguration(), null); request.setLoggingLevel(EclipsePreferencesConfigurator.local.getLogLevel()); DefaultLogger.getInstance() .log("Preparing to run maven, the log level was:" + request.getLoggingLevel() + " but we increased to " + MavenExecutionRequest.LOGGING_LEVEL_DEBUG); request.setLoggingLevel(LOG_LEVEL); if (request.isOffline() && OFFLINE_MODE) { DefaultLogger.getInstance().log("Maven was configured to work OFFLINE, that is fine"); } else if (OFFLINE_MODE) { DefaultLogger.getInstance().log("Maven was configured to work ONLINE, " + "but we are using it OFFLINE for speed it up"); request.setOffline(true); } ExecutionListener listener = request.getExecutionListener(); if (listener != null) { DefaultLogger.getInstance().log("The following ExecutionListener was set " + listener + " but is going to be replaced"); } else { DefaultLogger.getInstance().log("NO ExecutionListener was set, creating one"); } ConsoleLogger logger = new ConsoleLogger(Logger.LEVEL_DEBUG, "MavenLogger"); ExecutionEventLogger execLogger = new ExecutionEventLogger(logger); request.setExecutionListener(execLogger); List<String> goals = new ArrayList<String>(); Properties props = new Properties(); DefaultLogger.getInstance() .log("[Application Packager] - Preparing for Karaf features file generation...", 1); if (!description.isAutoBuilding()) { DefaultLogger.getInstance().log("[Application Packager] - " + projectName + " will be compiled now because autobuilding is off.", 1); goals.add("compiler:compile"); // compile it if autobuilding is off request.setGoals(goals); request.setUserProperties(props); execution_result = maven.execute(request, null); DefaultLogger.getInstance().log("[Application Packager] - Compiling operation ended.", 1); } DefaultLogger.getInstance().log("[Application Packager] - Generating Karaf features file...", 1); goals.clear(); props = new Properties(); goals.add(GROUP_ID + ":" + ARTIFACT_ID + ":" + VERSION + ":" + GOAL_FEATURE); request.setGoals(goals); request.setUserProperties(props); execution_result = maven.execute(request, null); if (execution_result.getExceptions() == null || execution_result.getExceptions().isEmpty()) { DefaultLogger.getInstance() .log("[Application Packager] - Karaf features file generated successfully.", 1); return true; } else { DefaultLogger.getInstance().log( "[Application Packager] - Karaf features file not generated because of errors:", 3); for (int i = 0; i < execution_result.getExceptions().size(); i++) DefaultLogger.getInstance().log("[Application Packager] - " + execution_result.getExceptions().get(i).getMessage(), 1); } } else { int exitLevel = 0; DefaultLogger.getInstance() .log("[Application Packager] - Preparing for Karaf features file generation...", 1); if (!description.isAutoBuilding()) { DefaultLogger.getInstance().log("[Application Packager] - " + projectName + " will be compiled now because autobuilding is off.", 1); exitLevel = ProcessExecutor.runMavenCommand("compiler:compile", ProjectPath); DefaultLogger.getInstance().log("[Application Packager] - Compiling operation ended.", 1); if (exitLevel != 0) { DefaultLogger.getInstance() .log("[WARNING] - Error occurred during compiling operation.", 3); } } DefaultLogger.getInstance().log("[Application Packager] - Generating Karaf features file...", 1); exitLevel = ProcessExecutor.runMavenCommand( GROUP_ID + ":" + ARTIFACT_ID + ":" + VERSION + ":" + GOAL_FEATURE, ProjectPath); if (exitLevel == 0) { DefaultLogger.getInstance() .log("[Application Packager] - Karaf features file generated successfully.", 1); return true; } else { DefaultLogger.getInstance().log( "[Application Packager] - FATAL ERROR!!! Karaf features file not generated because of errors", 4); } } } } catch (Exception ex) { ex.printStackTrace(); } return false; }
From source file:org.universaal.tools.packaging.tool.util.KarafFeaturesGenerator.java
License:Apache License
private void generateKarFile(IProject part) { try {// w ww.j a va 2s . c om DefaultLogger.getInstance().log("Generate kar for " + part.getName()); String path = part.getLocation().toString(); //ResourcesPlugin.getWorkspace().getRoot().getLocation().makeAbsolute()+"/"+part.getDescription().getName(); DefaultLogger.getInstance().log("location:" + path); File target, feature; target = new File(path + "/target"); feature = new File(path + "/target/feature"); if (!target.exists()) target.mkdir(); if (!feature.exists()) feature.mkdir(); copyFile(new File(path + "/target/classes/feature.xml"), new File(path + "/target/feature/feature.xml")); IMavenProjectRegistry projectManager = MavenPlugin.getMavenProjectRegistry(); IFile pomResource = g.getPart(part.getName()).getFile(IMavenConstants.POM_FILE_NAME); IMavenProjectFacade projectFacade = projectManager.create(pomResource, true, null); IMaven maven = MavenPlugin.getMaven(); if (pomResource != null && projectFacade != null) { if (EclipsePreferencesConfigurator.local.runMavenEmbedded()) { MavenExecutionRequest request = projectManager.createExecutionRequest(pomResource, projectFacade.getResolverConfiguration(), null); request.setLoggingLevel(EclipsePreferencesConfigurator.local.getLogLevel()); List<String> goals = new ArrayList<String>(); Properties props = new Properties(); goals.add(GROUP_ID + ":" + ARTIFACT_ID + ":" + VERSION + ":" + GOAL_KARFILE); request.setGoals(goals); request.setUserProperties(props); request.setOffline(true); maven.execute(request, null); } else { int exitLevel = ProcessExecutor.runMavenCommand( GROUP_ID + ":" + ARTIFACT_ID + ":" + VERSION + ":" + GOAL_KARFILE, path); if (exitLevel == 0) { DefaultLogger.getInstance().log("[Application Packager] - Kar file generated successfully.", 1); } else { DefaultLogger.getInstance().log( "[Application Packager] - FATAL ERROR!!! Kar file not generated because of errors.", 4); } } } } catch (Exception ex) { ex.printStackTrace(); } }
From source file:org.universaal.tools.packaging.tool.zip.CreateJar.java
License:Apache License
public boolean create(IProject part, int partNumber) { GUI g = GUI.getInstance();/*from www. j a va 2s . c o m*/ String destination_path = g.getTempDir() + "/bin/part" + partNumber + "/"; POMParser p = new POMParser(new File(part.getFile("pom.xml").getLocation() + "")); String sourcePath = part.getLocation().toString(); EffectivePOMContainer.setDocument(part.getName()); try { String fileName = EffectivePOMContainer.getArtifactId() + "-" + EffectivePOMContainer.getVersion() + ".jar"; IMavenProjectRegistry projectManager = MavenPlugin.getMavenProjectRegistry(); IFile pomResource = g.getPart(part.getName()).getFile(IMavenConstants.POM_FILE_NAME); IMavenProjectFacade projectFacade = projectManager.create(pomResource, true, null); String ProjectPath = g.getPart(part.getName()).getLocation().toString(); IMaven maven = MavenPlugin.getMaven(); if (pomResource != null && projectFacade != null) { DefaultLogger.getInstance().log( "[Application Packager] - Preparing for packaging " + part.getName() + " project...", 1); IWorkspace workspace = ResourcesPlugin.getWorkspace(); IWorkspaceDescription description = workspace.getDescription(); if (EclipsePreferencesConfigurator.local.runMavenEmbedded()) { MavenExecutionRequest request = projectManager.createExecutionRequest(pomResource, projectFacade.getResolverConfiguration(), null); request.setLoggingLevel(EclipsePreferencesConfigurator.local.getLogLevel()); List<String> goals = new ArrayList<String>(); Properties props = new Properties(); if (!description.isAutoBuilding()) { goals.add("compiler:compile"); // compile it if autobuilding is off } DefaultLogger.getInstance() .log("[Application Packager] - Packaging " + part.getName() + " project...", 1); goals.add("package"); request.setGoals(goals); request.setUserProperties(props); MavenExecutionResult execution_result = maven.execute(request, null); if (execution_result.getExceptions() != null && !execution_result.getExceptions().isEmpty()) { for (int i = 0; i < execution_result.getExceptions().size(); i++) { DefaultLogger.getInstance() .log("[Application Packager] - Packaging ended with errors:.", 1); DefaultLogger.getInstance().log("[Application Packager] - ERROR: " + execution_result.getExceptions().get(i).getMessage(), 3); } return false; } else DefaultLogger.getInstance().log("[Application Packager] - Packaging ended successfully.", 1); } else { int exitLevel = 0; if (!description.isAutoBuilding()) { DefaultLogger.getInstance().log("[Application Packager] - " + part.getName() + " will be compiled now because autobuilding is off.", 1); exitLevel = ProcessExecutor.runMavenCommand("compiler:compile", ProjectPath); DefaultLogger.getInstance().log("[Application Packager] - Compiling operation ended.", 1); if (exitLevel != 0) { DefaultLogger.getInstance() .log("[WARNING] - Error occurred during compiling operation.", 2); return false; } } DefaultLogger.getInstance() .log("[Application Packager] - Packaging " + part.getName() + " project...", 1); exitLevel = ProcessExecutor.runMavenCommand("package", ProjectPath); if (exitLevel == 0) { DefaultLogger.getInstance().log("[Application Packager] - Packaging ended successfully.", 1); } else { DefaultLogger.getInstance().log("[Application Packager] - Packaging ended with errors.", 1); return false; } } DefaultLogger.getInstance().log("[Application Packager] - Copying: " + sourcePath + "/target/" + fileName + " -> " + destination_path + fileName, 1); copyFile(new File(sourcePath + "/target/" + fileName), new File(destination_path + fileName)); } } catch (Exception ex) { ex.printStackTrace(); return false; } try { //if file KAR is present, add it to partX folder String fileName = EffectivePOMContainer.getArtifactId() + "-" + EffectivePOMContainer.getVersion() + ".kar"; File kar = new File(sourcePath + "/target/" + fileName); if (kar.exists()) { DefaultLogger.getInstance().log("[Application Packager] - Copying: " + sourcePath + "/target/" + fileName + " -> " + destination_path + fileName, 1); copyFile(kar, new File(destination_path + fileName)); } } catch (Exception ex) { ex.printStackTrace(); return false; } return true; }