Package groovy.ui

# Class GroovyMain

java.lang.Object
groovy.ui.GroovyMain

public class GroovyMain extends Object
A Command line to execute groovy.

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static class`
  `GroovyMain.VersionProvider`
  Supplies version text for the command-line interface.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `GroovyMain()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static String`
  `buildConfigScriptText(List<String> transforms)`
  Builds a configuration script that applies the supplied transformations.
  `protected GroovyCodeSource`
  `getScriptSource(boolean isScriptFile, String script)`
  Get a new GroovyCodeSource for a script which may be given as a location (isScript is true) or as text (isScript is false).
  `String`
  `getText(String uriOrFilename)`
  Deprecated.
  `File`
  `huntForTheScriptFile(String input)`
  Hunt for the script file by calling searchForGroovyScriptFile(String).
  `static void`
  `main(String[] args)`
  Main CLI interface.
  `static void`
  `processConfigScripts(List<String> scripts, CompilerConfiguration conf)`
  Evaluates configuration scripts against the supplied compiler configuration.
  `static void`
  `processConfigScriptText(String scriptText, CompilerConfiguration conf)`
  Evaluates inline configuration script text against the supplied compiler configuration.
  `static File`
  `searchForGroovyScriptFile(String input)`
  Search for the script file, doesn't bother if it is named precisely.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### GroovyMain

    public GroovyMain()

- ## Method Details

  - ### main

    public static void main(String[] args)
    Main CLI interface.
    Parameters:
      `args` - all command line args.

  - ### processConfigScripts

    public static void processConfigScripts(List<String> scripts, CompilerConfiguration conf) throws IOException
    Evaluates configuration scripts against the supplied compiler configuration.
    Parameters:
      `scripts` - the configuration script paths
      `conf` - the configuration to customize
    Throws:
      `IOException` - if a script cannot be read

  - ### processConfigScriptText

    public static void processConfigScriptText(String scriptText, CompilerConfiguration conf)
    Evaluates inline configuration script text against the supplied compiler configuration.
    Parameters:
      `scriptText` - the configuration script text
      `conf` - the configuration to customize

  - ### buildConfigScriptText

    public static String buildConfigScriptText(List<String> transforms)
    Builds a configuration script that applies the supplied transformations.
    Parameters:
      `transforms` - the transformation declarations
    Returns:
      the generated configuration script text

  - ### getText

    @Deprecated public String getText(String uriOrFilename) throws IOException
    Deprecated.
    Get the text of the Groovy script at the given location. If the location is a file path and it does not exist as given, then `huntForTheScriptFile(String)` is called to try with some Groovy extensions appended. This method is not used to process scripts and is retained for backward compatibility. If you want to modify how GroovyMain processes scripts then use `getScriptSource(boolean, String)`.
    Parameters:
      `uriOrFilename` -
    Returns:
      the text content at the location
    Throws:
      `IOException`

  - ### getScriptSource

    protected GroovyCodeSource getScriptSource(boolean isScriptFile, String script) throws IOException, URISyntaxException
    Get a new GroovyCodeSource for a script which may be given as a location (isScript is true) or as text (isScript is false).
    Parameters:
      `isScriptFile` - indicates whether the script parameter is a location or content
      `script` - the location or context of the script
    Returns:
      a new GroovyCodeSource for the given script
    Throws:
      `IOException`
      `URISyntaxException`
    Since:
      2.3.0

  - ### searchForGroovyScriptFile

    public static File searchForGroovyScriptFile(String input)
    Search for the script file, doesn't bother if it is named precisely. Tries in this order: - actual supplied name - name.groovy - name.gvy - name.gy - name.gsh
    Since:
      2.3.0

  - ### huntForTheScriptFile

    public File huntForTheScriptFile(String input)
    Hunt for the script file by calling searchForGroovyScriptFile(String).
    See Also:
      - `searchForGroovyScriptFile(String)`