Package org.gradle.nativeplatform.tasks

## Class InstallExecutable

- java.lang.Object
- - org.gradle.api.internal.AbstractTask
  - - org.gradle.api.DefaultTask
    - - org.gradle.nativeplatform.tasks.InstallExecutable

- All Implemented Interfaces:
    `Comparable<Task>`, `org.gradle.api.internal.DynamicObjectAware`, `org.gradle.api.internal.TaskInternal`, `ExtensionAware`, `Task`, `org.gradle.util.Configurable<Task>`

      public class InstallExecutable
      extends DefaultTask

  Installs an executable with it's dependent libraries so it can be easily executed.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.gradle.api.Task

      `Task.Namer`

  - ### Field Summary

    - ### Fields inherited from interface org.gradle.api.Task

      `TASK_ACTION, TASK_CONSTRUCTOR_ARGS, TASK_DEPENDS_ON, TASK_DESCRIPTION, TASK_GROUP, TASK_NAME, TASK_OVERWRITE, TASK_TYPE`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `InstallExecutable​(org.gradle.internal.work.WorkerLeaseService workerLeaseService)` | Injects a `WorkerLeaseService` instance.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `RegularFileProperty` | `getExecutableFile()` | The executable file to install.
    `protected org.gradle.internal.nativeintegration.filesystem.FileSystem` | `getFileSystem()` |
    `protected FileSystemOperations` | `getFileSystemOperations()` |
    `protected File` | `getInputFileIfExists()` | Workaround for when the task is given an input file that doesn't exist
    `DirectoryProperty` | `getInstallDirectory()` | The directory to install files into.
    `RegularFileProperty` | `getInstalledExecutable()` | The location of the installed executable file.
    `FileCollection` | `getLibs()` | The library files that should be installed.
    `Provider<RegularFile>` | `getRunScriptFile()` | Returns the script file that can be used to run the install image.
    `Property<NativePlatform>` | `getTargetPlatform()` | The platform being linked for.
    `Property<NativeToolChain>` | `getToolChain()` | The tool chain used for linking.
    `protected void` | `install()` |
    `void` | `lib​(Object libs)` | Adds a set of library files to be installed.
    `void` | `setLibs​(FileCollection libs)` |

    - ### Methods inherited from class org.gradle.api.DefaultTask

      `compareTo, configure, dependsOn, doFirst, doFirst, doFirst, doLast, doLast, doLast, finalizedBy, getActions, getAnt, getDependsOn, getDescription, getDestroyables, getDidWork, getEnabled, getExtensions, getFinalizedBy, getGroup, getInputs, getLocalState, getLogger, getLogging, getMustRunAfter, getName, getOutputs, getPath, getProject, getShouldRunAfter, getState, getTaskDependencies, getTemporaryDir, getTimeout, hasProperty, mustRunAfter, onlyIf, onlyIf, property, setActions, setDependsOn, setDescription, setDidWork, setEnabled, setFinalizedBy, setGroup, setMustRunAfter, setOnlyIf, setOnlyIf, setProperty, setShouldRunAfter, shouldRunAfter, usesService`

    - ### Methods inherited from class org.gradle.api.internal.AbstractTask

      `appendParallelSafeAction, getAsDynamicObject, getConvention, getIdentityPath, getImpliesSubProjects, getOnlyIf, getRequiredServices, getServices, getSharedResources, getStandardOutputCapture, getTaskActions, getTaskIdentity, getTemporaryDirFactory, hasTaskActions, injectIntoNewInstance, isEnabled, isHasCustomActions, prependParallelSafeAction, replaceLogger, setImpliesSubProjects`

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

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

    - ### Methods inherited from interface org.gradle.api.Task

      `getConvention`

- - ### Constructor Detail

    - #### InstallExecutable

          @Inject
          public InstallExecutable​(org.gradle.internal.work.WorkerLeaseService workerLeaseService)

      Injects a `WorkerLeaseService` instance.
      Since:
        4.2

  - ### Method Detail

    - #### getToolChain

          @Internal
          public Property<NativeToolChain> getToolChain()

      The tool chain used for linking.
      Since:
        4.7

    - #### getTargetPlatform

          public Property<NativePlatform> getTargetPlatform()

      The platform being linked for.
      Since:
        4.7

    - #### getInstallDirectory

          @OutputDirectory
          public DirectoryProperty getInstallDirectory()

      The directory to install files into.
      Since:
        4.1

    - #### getExecutableFile

          @Internal("Covered by inputFileIfExists")
          public RegularFileProperty getExecutableFile()

      The executable file to install.
      Since:
        4.7

    - #### getInstalledExecutable

          @OutputFile
          public RegularFileProperty getInstalledExecutable()

      The location of the installed executable file.
      Since:
        4.7

    - #### getInputFileIfExists

          @SkipWhenEmpty
          @Nullable
          @Optional
          @PathSensitive(NAME_ONLY)
          @InputFile
          protected File getInputFileIfExists()

      Workaround for when the task is given an input file that doesn't exist
      Since:
        4.3

    - #### getLibs

          @PathSensitive(RELATIVE)
          @InputFiles
          public FileCollection getLibs()

      The library files that should be installed.

    - #### setLibs

          public void setLibs​(FileCollection libs)

    - #### lib

          public void lib​(Object libs)

      Adds a set of library files to be installed. The provided libs object is evaluated as per `Project.files(Object...)`.

    - #### getRunScriptFile

          @Internal("covered by getInstallDirectory")
          public Provider<RegularFile> getRunScriptFile()

      Returns the script file that can be used to run the install image.
      Since:
        4.4

    - #### getFileSystem

          @Inject
          protected org.gradle.internal.nativeintegration.filesystem.FileSystem getFileSystem()

    - #### getFileSystemOperations

          @Inject
          protected FileSystemOperations getFileSystemOperations()

    - #### install

          protected void install()