Class DefaultInvocationRequest

    • Constructor Detail

      • DefaultInvocationRequest

        public DefaultInvocationRequest()
    • Method Detail

      • getBaseDirectory

        public File getBaseDirectory​(File defaultDirectory)
        Gets the path to the base directory of the POM for the Maven invocation. If InvocationRequest.getPomFile() does not return null, this setting only affects the working directory for the Maven invocation.
        Specified by:
        getBaseDirectory in interface InvocationRequest
        Parameters:
        defaultDirectory - The default base directory to use if none is configured for this request, may be null.
        Returns:
        The path to the base directory of the POM or null if not set.
      • getInputStream

        public InputStream getInputStream​(InputStream defaultStream)
        Gets the input stream used to provide input for the invoked Maven build. This is in particular useful when invoking Maven in interactive mode.
        Specified by:
        getInputStream in interface InvocationRequest
        Parameters:
        defaultStream - the default InputStream to use
        Returns:
        The input stream used to provide input for the invoked Maven build or null if not set.
      • getLocalRepositoryDirectory

        public File getLocalRepositoryDirectory​(File defaultDirectory)
        Gets the path to the base directory of the local repository to use for the Maven invocation.
        Specified by:
        getLocalRepositoryDirectory in interface InvocationRequest
        Parameters:
        defaultDirectory - The default location to use if no location is configured for this request, may be null.
        Returns:
        The path to the base directory of the local repository or null to use the location from the settings.xml.
      • isDebug

        public boolean isDebug()

        isDebug.

        Specified by:
        isDebug in interface InvocationRequest
        Returns:
        a boolean.
      • setRecursive

        public InvocationRequest setRecursive​(boolean recursive)
        Sets the recursion behavior of a reactor invocation. Inverse equivalent of -N and --non-recursive
        Specified by:
        setRecursive in interface InvocationRequest
        Parameters:
        recursive - true if sub modules should be build, false otherwise.
        Returns:
        This invocation request.
      • setBaseDirectory

        public InvocationRequest setBaseDirectory​(File basedir)
        Sets the path to the base directory of the POM for the Maven invocation. If InvocationRequest.getPomFile() does not return null, this setting only affects the working directory for the Maven invocation.
        Specified by:
        setBaseDirectory in interface InvocationRequest
        Parameters:
        basedir - The path to the base directory of the POM, may be null if not used.
        Returns:
        This invocation request.
      • setDebug

        public InvocationRequest setDebug​(boolean debug)
        Sets the debug mode of the Maven invocation. Equivalent of -X and --debug
        Specified by:
        setDebug in interface InvocationRequest
        Parameters:
        debug - true if Maven should be executed in debug mode, false if the normal mode should be used.
        Returns:
        This invocation request.
      • setErrorHandler

        public InvocationRequest setErrorHandler​(InvocationOutputHandler errorHandler)
        Sets the handler used to capture the error output from the Maven build.
        Specified by:
        setErrorHandler in interface InvocationRequest
        Parameters:
        errorHandler - The error handler, may be null if the output is not of interest.
        Returns:
        This invocation request.
      • setGoals

        public InvocationRequest setGoals​(List<String> goals)
        Sets the goals for the Maven invocation.
        Specified by:
        setGoals in interface InvocationRequest
        Parameters:
        goals - The goals for the Maven invocation, may be null to execute the POMs default goal.
        Returns:
        This invocation request.
      • setInputStream

        public InvocationRequest setInputStream​(InputStream inputStream)
        Sets the input stream used to provide input for the invoked Maven build. This is in particular useful when invoking Maven in interactive mode.
        Specified by:
        setInputStream in interface InvocationRequest
        Parameters:
        inputStream - The input stream used to provide input for the invoked Maven build, may be null if not required.
        Returns:
        This invocation request.
      • setBatchMode

        public InvocationRequest setBatchMode​(boolean interactive)
        Sets the interaction mode of the Maven invocation. Equivalent of -B and --batch-mode
        Specified by:
        setBatchMode in interface InvocationRequest
        Parameters:
        interactive - true if Maven should be executed in non-interactive mode, false if the interactive modes is used.
        Returns:
        This invocation request.
      • setLocalRepositoryDirectory

        public InvocationRequest setLocalRepositoryDirectory​(File localRepository)
        Sets the path to the base directory of the local repository to use for the Maven invocation.
        Specified by:
        setLocalRepositoryDirectory in interface InvocationRequest
        Parameters:
        localRepository - The path to the base directory of the local repository, may be null.
        Returns:
        This invocation request.
      • setOffline

        public InvocationRequest setOffline​(boolean offline)
        Sets the network mode of the Maven invocation. Equivalent of -o and --offline
        Specified by:
        setOffline in interface InvocationRequest
        Parameters:
        offline - true if Maven should be executed in offline mode, false if the online mode is used.
        Returns:
        This invocation request.
      • setOutputHandler

        public InvocationRequest setOutputHandler​(InvocationOutputHandler outputHandler)
        Sets the handler used to capture the standard output from the Maven build.
        Specified by:
        setOutputHandler in interface InvocationRequest
        Parameters:
        outputHandler - The output handler, may be null if the output is not of interest.
        Returns:
        This invocation request.
      • setPomFile

        public InvocationRequest setPomFile​(File pomFile)
        Sets the path to the POM for the Maven invocation. If no base directory is set, the parent directory of this POM will be used as the working directory for the Maven invocation.
        Specified by:
        setPomFile in interface InvocationRequest
        Parameters:
        pomFile - The path to the POM for the Maven invocation, may be null if not used.
        Returns:
        This invocation request.
      • setProperties

        public InvocationRequest setProperties​(Properties properties)
        Sets the system properties for the Maven invocation.
        Specified by:
        setProperties in interface InvocationRequest
        Parameters:
        properties - The system properties for the Maven invocation, may be null if not set.
        Returns:
        This invocation request.
      • setShowErrors

        public InvocationRequest setShowErrors​(boolean showErrors)
        Sets the exception output mode of the Maven invocation. Equivalent of -e and --errors
        Specified by:
        setShowErrors in interface InvocationRequest
        Parameters:
        showErrors - true if Maven should print stack traces, false otherwise.
        Returns:
        This invocation request.
      • setUpdateSnapshots

        public InvocationRequest setUpdateSnapshots​(boolean updateSnapshots)
        Specifies whether Maven should enforce an update check for plugins and snapshots. Equivalent of -U and --update-snapshots
        Specified by:
        setUpdateSnapshots in interface InvocationRequest
        Parameters:
        updateSnapshots - true if plugins and snapshots should be updated, false otherwise.
        Returns:
        This invocation request.
      • setShellEnvironmentInherited

        public InvocationRequest setShellEnvironmentInherited​(boolean shellEnvironmentInherited)
        Specifies whether the environment variables of the current process should be propagated to the Maven invocation.
        Specified by:
        setShellEnvironmentInherited in interface InvocationRequest
        Parameters:
        shellEnvironmentInherited - true if the environment variables should be propagated, false otherwise.
        Returns:
        This invocation request.
      • setJavaHome

        public InvocationRequest setJavaHome​(File javaHome)
        Sets the path to the base directory of the Java installation used to run Maven.
        Specified by:
        setJavaHome in interface InvocationRequest
        Parameters:
        javaHome - The path to the base directory of the Java installation used to run Maven, may be null to use the default Java home.
        Returns:
        This invocation request.
      • setUserSettingsFile

        public InvocationRequest setUserSettingsFile​(File userSettings)
        Sets the path to the user settings for the Maven invocation. Equivalent of -s and --settings
        Specified by:
        setUserSettingsFile in interface InvocationRequest
        Parameters:
        userSettings - The path to the user settings for the Maven invocation, may be null to load the user settings from the default location.
        Returns:
        This invocation request.
      • setGlobalSettingsFile

        public InvocationRequest setGlobalSettingsFile​(File globalSettings)
        Sets the path to the global settings for the Maven invocation. Equivalent of -gs and --global-settings
        Specified by:
        setGlobalSettingsFile in interface InvocationRequest
        Parameters:
        globalSettings - The path to the global settings for the Maven invocation, may be null to load the global settings from the default location.
        Returns:
        This invocation request.
      • setToolchainsFile

        public InvocationRequest setToolchainsFile​(File toolchains)
        Sets the alternate path for the user toolchains file Equivalent of -t or --toolchains
        Specified by:
        setToolchainsFile in interface InvocationRequest
        Parameters:
        toolchains - the alternate path for the user toolchains file
        Returns:
        This invocation request
      • getGlobalToolchainsFile

        public File getGlobalToolchainsFile()
        Alternate path for the global toolchains file Note. This is available since Maven 3.3.1
        Specified by:
        getGlobalToolchainsFile in interface InvocationRequest
        Returns:
        a File object.
      • setGlobalToolchainsFile

        public InvocationRequest setGlobalToolchainsFile​(File toolchains)
        Sets the alternate path for the global toolchains file Equivalent of -gt or --global-toolchains
        Specified by:
        setGlobalToolchainsFile in interface InvocationRequest
        Parameters:
        toolchains - the alternate path for the global toolchains file
        Returns:
        This invocation request
      • getPomFileName

        public String getPomFileName()
        Gets the (unqualified) filename of the POM for the Maven invocation. This setting is ignored if InvocationRequest.getPomFile() does not return null. Otherwise, the base directory is assumed to contain a POM with this name. By default, a file named pom.xml is used.
        Specified by:
        getPomFileName in interface InvocationRequest
        Returns:
        a String object.
      • setPomFileName

        public InvocationRequest setPomFileName​(String pomFilename)
        Sets the (unqualified) filename of the POM for the Maven invocation. This setting is ignored if InvocationRequest.getPomFile() does not return null. Otherwise, the base directory is assumed to contain a POM with this name.
        Specified by:
        setPomFileName in interface InvocationRequest
        Parameters:
        pomFilename - The (unqualified) filename of the POM for the Maven invocation, may be null if not used.
        Returns:
        This invocation request.
      • setProfiles

        public InvocationRequest setProfiles​(List<String> profiles)
        Sets the profiles for the Maven invocation. Equivalent of -P and --active-profiles
        Specified by:
        setProfiles in interface InvocationRequest
        Parameters:
        profiles - The profiles for the Maven invocation, may be null to use the default profiles.
        Returns:
        This invocation request.
      • isNonPluginUpdates

        public boolean isNonPluginUpdates()
        Indicates whether Maven should check for plugin updates. By default, plugin updates are not suppressed.
        Specified by:
        isNonPluginUpdates in interface InvocationRequest
        Returns:
        a boolean.
      • setNonPluginUpdates

        public InvocationRequest setNonPluginUpdates​(boolean nonPluginUpdates)
        Specifies whether Maven should check for plugin updates.

        Equivalent of -npu or --no-plugin-updates

        note: Ineffective with Maven3, only kept for backward compatibility

        Specified by:
        setNonPluginUpdates in interface InvocationRequest
        Parameters:
        nonPluginUpdates - true if plugin updates should be suppressed, false otherwise.
        Returns:
        This invocation request.
      • addShellEnvironment

        public InvocationRequest addShellEnvironment​(String name,
                                                     String value)
        Adds the specified environment variable to the Maven invocation.
        Specified by:
        addShellEnvironment in interface InvocationRequest
        Parameters:
        name - The name of the environment variable, must not be null.
        value - The value of the environment variable, must not be null.
        Returns:
        This invocation request.
      • setMavenOpts

        public InvocationRequest setMavenOpts​(String mavenOpts)
        Sets the value of the MAVEN_OPTS environment variable.
        Specified by:
        setMavenOpts in interface InvocationRequest
        Parameters:
        mavenOpts - The value of the MAVEN_OPTS environment variable, may be null to use the default options.
        Returns:
        This invocation request.
      • setShowVersion

        public InvocationRequest setShowVersion​(boolean showVersion)
        enable displaying version without stopping the build Equivalent of -V or --show-version
        Specified by:
        setShowVersion in interface InvocationRequest
        Parameters:
        showVersion - enable displaying version
        Returns:
        This invocation request.
      • setThreads

        public InvocationRequest setThreads​(String threads)
        Thread count, for instance 2.0C where C is core multiplied Equivalent of -T or --threads

        note: available since Maven3

        Specified by:
        setThreads in interface InvocationRequest
        Parameters:
        threads - the threadcount
        Returns:
        This invocation request.
      • getProjects

        public List<String> getProjects()
        A list of specified reactor projects to build instead of all projects. A project can be specified by [groupId]:artifactId or by its relative path.
        Specified by:
        getProjects in interface InvocationRequest
        Returns:
        a List object.
      • setProjects

        public InvocationRequest setProjects​(List<String> projects)
        Sets the reactor project list. Equivalent of -pl or --projects
        Specified by:
        setProjects in interface InvocationRequest
        Parameters:
        projects - the reactor project list
        Returns:
        This invocation request.
      • isAlsoMake

        public boolean isAlsoMake()
        Get the value of the also-make argument.
        Specified by:
        isAlsoMake in interface InvocationRequest
        Returns:
        a boolean.
      • setAlsoMake

        public InvocationRequest setAlsoMake​(boolean alsoMake)
        Enable the 'also make' mode. Equivalent of -am or --also-make
        Specified by:
        setAlsoMake in interface InvocationRequest
        Parameters:
        alsoMake - enable 'also make' mode
        Returns:
        This invocation request.
      • isAlsoMakeDependents

        public boolean isAlsoMakeDependents()
        Get the value of the also-make-dependents
        Specified by:
        isAlsoMakeDependents in interface InvocationRequest
        Returns:
        a boolean.
      • setAlsoMakeDependents

        public InvocationRequest setAlsoMakeDependents​(boolean alsoMakeDependents)
        Enable the 'also make dependents' mode. Equivalent of -amd or --also-make-dependents
        Specified by:
        setAlsoMakeDependents in interface InvocationRequest
        Parameters:
        alsoMakeDependents - enable 'also make' mode
        Returns:
        This invocation request.
      • setResumeFrom

        public InvocationRequest setResumeFrom​(String resumeFrom)
        Resume reactor from specified project. Equivalent of -rf or --resume-from
        Specified by:
        setResumeFrom in interface InvocationRequest
        Parameters:
        resumeFrom - set the project to resume from
        Returns:
        This invocation request
      • setBuilder

        public InvocationRequest setBuilder​(String id)
        The id of the build strategy to use. equivalent of --builder id. Note. This is available since Maven 3.2.1
        Specified by:
        setBuilder in interface InvocationRequest
        Parameters:
        id - The builder id.
        Returns:
        InvocationRequest FIXME: How to identify if this is a valid command line option?
      • getBuilder

        public String getBuilder()
        Get the current set builder strategy id equivalent of --builder id. Note. This is available since Maven 3.2.1
        Specified by:
        getBuilder in interface InvocationRequest
        Returns:
        a String object.
      • getTimeoutInSeconds

        public int getTimeoutInSeconds()

        getTimeoutInSeconds.

        Specified by:
        getTimeoutInSeconds in interface InvocationRequest
        Returns:
        the timeout in seconds to execute the project
      • setTimeoutInSeconds

        public void setTimeoutInSeconds​(int timeoutInSeconds)

        setTimeoutInSeconds.

        Specified by:
        setTimeoutInSeconds in interface InvocationRequest
        Parameters:
        timeoutInSeconds - the timeout in seconds to execute the project
      • isQuiet

        public boolean isQuiet()
        Gets the quiet mode of the Maven invocation. By default, Maven is executed in normal mode.
        Specified by:
        isQuiet in interface InvocationRequest
        Returns:
        a boolean.
        Since:
        3.1.0
      • setQuiet

        public InvocationRequest setQuiet​(boolean quiet)
        Sets the quiet mode of the Maven invocation. Equivalent of -q and --quiet
        Specified by:
        setQuiet in interface InvocationRequest
        Parameters:
        quiet - true if Maven should be executed in quiet mode, false if the normal mode should be used.
        Returns:
        This invocation request.