本文整理汇总了Java中org.apache.maven.shared.invoker.InvocationRequest.setBaseDirectory方法的典型用法代码示例。如果您正苦于以下问题:Java InvocationRequest.setBaseDirectory方法的具体用法?Java InvocationRequest.setBaseDirectory怎么用?Java InvocationRequest.setBaseDirectory使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.apache.maven.shared.invoker.InvocationRequest
的用法示例。
在下文中一共展示了InvocationRequest.setBaseDirectory方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: runMaven
import org.apache.maven.shared.invoker.InvocationRequest; //导入方法依赖的package包/类
public List<String> runMaven(final File workingDir, final String... arguments) throws IOException {
final InvocationRequest request = createRequest();
request.setGoals(asList(arguments));
request.setBaseDirectory(workingDir);
final Invoker invoker = new DefaultInvoker();
invoker.setMavenHome(mvnHome);
final CollectingLogOutputStream logOutput = new CollectingLogOutputStream(false);
invoker.setOutputHandler(new PrintStreamHandler(new PrintStream(logOutput), true));
int exitCode;
try {
final InvocationResult result = invoker.execute(request);
exitCode = result.getExitCode();
} catch (final Exception e) {
throw new MavenExecutionException(1, logOutput.getLines());
}
final List<String> output = logOutput.getLines();
if (exitCode != 0) {
throw new MavenExecutionException(exitCode, output);
}
return output;
}
示例2: executeLicenseProject
import org.apache.maven.shared.invoker.InvocationRequest; //导入方法依赖的package包/类
private void executeLicenseProject(File pomFile, File repoDir) throws Exception {
InvocationRequest mavenRequest = new DefaultInvocationRequest();
mavenRequest.setPomFile(pomFile);
mavenRequest.setBaseDirectory(pomFile.getParentFile());
mavenRequest.setUserSettingsFile(userSettings);
mavenRequest.setLocalRepositoryDirectory(repoDir);
mavenRequest.setGoals(Arrays.asList("clean", "package"));
Invoker invoker = new DefaultInvoker();
try {
InvocationResult result = invoker.execute(mavenRequest);
if (result.getExitCode() != 0) {
throw result.getExecutionException() != null ? result.getExecutionException()
: new IllegalStateException("Build failure: " + result.getExitCode());
}
getLog().info("Licenses POM executed: " + pomFile.getAbsolutePath());
} catch (Exception e) {
getLog().error("Error when executing " + pomFile.getAbsolutePath(), e);
}
}
示例3: backGroundBuild
import org.apache.maven.shared.invoker.InvocationRequest; //导入方法依赖的package包/类
void backGroundBuild(MavenProject project) throws MojoExecutionException {
MavenExecutionRequest executionRequest = session.getRequest();
InvocationRequest request = new DefaultInvocationRequest();
request.setBaseDirectory(project.getBasedir());
request.setPomFile(project.getFile());
request.setGoals(executionRequest.getGoals());
request.setRecursive(false);
request.setInteractive(false);
request.setProfiles(executionRequest.getActiveProfiles());
request.setProperties(executionRequest.getUserProperties());
Invoker invoker = new DefaultInvoker();
try {
InvocationResult result = invoker.execute(request);
if (result.getExitCode() != 0) {
throw new IllegalStateException("Error invoking Maven goals:[" + StringUtils.join(executionRequest.getGoals(), ", ") + "]", result.getExecutionException());
}
} catch (MavenInvocationException e) {
throw new IllegalStateException("Error invoking Maven goals:[" + StringUtils.join(executionRequest.getGoals(), ", ") + "]", e);
}
}
示例4: execute
import org.apache.maven.shared.invoker.InvocationRequest; //导入方法依赖的package包/类
public static void execute(File dir, List<String> commands, Properties props, boolean logToStdOut) throws MavenInvocationException {
InvocationRequest request = new DefaultInvocationRequest();
request.setBaseDirectory(dir);
request.setGoals(commands);
if (props!=null) {
request.setProperties(props);
}
Invoker invoker = new DefaultInvoker();
invoker.setMavenHome(mavenHome);
if (!logToStdOut) {
request.setOutputHandler(emptyHandler);
}
invoker.execute(request);
}
示例5: getClassPath
import org.apache.maven.shared.invoker.InvocationRequest; //导入方法依赖的package包/类
public static String getClassPath(File projectDir) {
InvocationRequest request = new DefaultInvocationRequest();
request.setBaseDirectory(projectDir);
request.setGoals(Collections.singletonList("dependency:build-classpath"));
Invoker invoker = new DefaultInvoker();
invoker.setMavenHome(mavenHome);
ClassPathListener cpl = new ClassPathListener();
invoker.setOutputHandler(cpl);
try {
invoker.execute(request);
} catch (MavenInvocationException e) {
e.printStackTrace();
}
return cpl.classPath;
}
示例6: executeGeneratedProjectBuild
import org.apache.maven.shared.invoker.InvocationRequest; //导入方法依赖的package包/类
private void executeGeneratedProjectBuild(File pomFile, File projectDir, File repoDir) throws Exception {
InvocationRequest mavenRequest = new DefaultInvocationRequest();
mavenRequest.setPomFile(pomFile);
mavenRequest.setBaseDirectory(projectDir);
mavenRequest.setUserSettingsFile(userSettings);
mavenRequest.setLocalRepositoryDirectory(repoDir);
mavenRequest.setGoals(Collections.singletonList("install"));
Properties props = System.getProperties();
if (Boolean.parseBoolean(downloadSources)) {
props.setProperty("swarm.download.sources", "");
}
if (Boolean.parseBoolean(downloadPoms)) {
props.setProperty("swarm.download.poms", "");
}
mavenRequest.setProperties(props);
Invoker invoker = new DefaultInvoker();
InvocationResult result = invoker.execute(mavenRequest);
if (result.getExitCode() != 0) {
throw result.getExecutionException();
}
getLog().info("Built project from BOM: " + projectDir.getAbsolutePath());
}
示例7: invokeChildTest
import org.apache.maven.shared.invoker.InvocationRequest; //导入方法依赖的package包/类
private Pair<MavenInvokeResult, JavaConfig> invokeChildTest(
String subDirName, String additionalProfile) throws IOException {
// set up working directory
clearWorkDir(subDirName);
File workDir = mkWorkDir(subDirName).getAbsoluteFile();
JavaConfig conf = new JavaConfig(workDir);
conf.setTestDir(new File(workDir, "src/test/java"));
conf.setRunTestOnly(true);
YamlUtils.dump(conf.toYamlObject(), new File(workDir, "sahagin.yml"));
FileUtils.copyFile(new File("pom.xml"), new File(workDir, "pom.xml"));
FileUtils.copyDirectory(testResourceDir(subDirName + "/src"), new File(workDir, "src"));
FileUtils.copyDirectory(testResourceDir("expected/captures"), new File(workDir, "captures"));
// execute test
InvocationRequest testRequest = new DefaultInvocationRequest();
if (System.getProperty("sahagin.maven.java.home") != null) {
testRequest.setJavaHome(new File(System.getProperty("sahagin.maven.java.home")));
}
testRequest.setGoals(Arrays.asList("clean", "test"));
if (additionalProfile == null) {
testRequest.setProfiles(Arrays.asList("sahagin-jar-test"));
} else {
testRequest.setProfiles(Arrays.asList("sahagin-jar-test", additionalProfile));
}
String jarPathOpt = "-Dsahagin.temp.jar="
+ new File("target/sahagin-temp.jar").getAbsolutePath();
testRequest.setMavenOpts(jarPathOpt);
testRequest.setBaseDirectory(workDir);
MavenInvokeResult testResult = mavenInvoke(testRequest, subDirName + ":test");
return Pair.of(testResult, conf);
}
示例8: createAndConfigureAnInvocationRequest
import org.apache.maven.shared.invoker.InvocationRequest; //导入方法依赖的package包/类
protected InvocationRequest createAndConfigureAnInvocationRequest( ItemWithProperties currentValue )
{
InvocationRequest request = new DefaultInvocationRequest();
request.setAlsoMake( isAlsoMake() );
request.setAlsoMakeDependents( isAlsoMakeDependents() );
request.setDebug( isDebug() );
request.setFailureBehavior( getFailureBehaviour() );
request.setGlobalChecksumPolicy( getGlobalChecksumPolicy() );
request.setGlobalSettingsFile( getGlobalSettingsFile() );
request.setInteractive( isInteractive() );
request.setLocalRepositoryDirectory( getLocalRepositoryDirectory() );
request.setMavenOpts( getMavenOpts() );
request.setNonPluginUpdates( isNonPluginUpdates() );
request.setOffline( isOffline() );
// request.setProperties( properties )
// ;
// @TODO: Think about it.
// request.setPomFile(pomFile);
// @TODO: Think about it.
// request.setPomFileName(pomFilename);
// The following parameter do make sense to use a placeholder
// base directory
// cd @[email protected]
// mvn clean package
request.setBaseDirectory( getBaseDirectoryAfterPlaceHolderIsReplaced( currentValue.getName() ) );
// goals:
// mvn plugin-name:@[email protected]
//
request.setGoals( getGoalsAfterPlaceHolderIsReplaced( currentValue.getName() ) );
// Profiles:
// mvn [email protected]@ clean package
// mvn [email protected]@
request.setProfiles( getProfilesAfterPlaceHolderIsReplaced( currentValue.getName() ) );
// Projects:
// mvn -pl [email protected]@ clean package
request.setProjects( getProjectsAfterPlaceHolderIsReplaced( currentValue.getName() ) );
Properties props = getMergedProperties(currentValue );
request.setProperties( props );
request.setRecursive( isRecursive() );
request.setResumeFrom( getResumeFrom() );
request.setShellEnvironmentInherited( isShellEnvironmentInherited() );
request.setShowErrors( isShowErrors() );
request.setShowVersion( isShowVersion() );
request.setThreads( getThreads() );
request.setToolchainsFile( getToolchains() );
request.setUpdateSnapshots( isUpdateSnapshots() );
request.setUserSettingsFile( getUserSettings() );
return request;
}