# Interface ComponentWithSharedLibrary

All Superinterfaces:
  `ComponentWithLinkFile, ComponentWithNativeRuntime, ComponentWithRuntimeFile, Named, SoftwareComponent`

All Known Subinterfaces:
  `CppSharedLibrary, SwiftSharedLibrary`

public interface ComponentWithSharedLibrary extends ComponentWithLinkFile, ComponentWithRuntimeFile
Represents a native component that produces a shared library.

Since:
  4.5

- ## Nested Class Summary

  ### Nested classes/interfaces inherited from interface Named

  `Named.Namer`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `FileCollection`
  `getLinkLibraries()`
  Returns the link libraries to use to link the shared library.
  `Provider<? extends LinkSharedLibrary>`
  `getLinkTask()`
  Returns the link task for the shared library.

  ### Methods inherited from interface ComponentWithLinkFile

  `getLinkFile, getLinkFileProducer`

  ### Methods inherited from interface ComponentWithNativeRuntime

  `getBaseName, getTargetMachine, getToolChain, isDebuggable, isOptimized`

  ### Methods inherited from interface ComponentWithRuntimeFile

  `getRuntimeFile`

  ### Methods inherited from interface Named

  `getName`

- ## Method Details

  - ### getLinkLibraries

    FileCollection getLinkLibraries()
    Returns the link libraries to use to link the shared library. Includes the link libraries of the component's dependencies.

  - ### getLinkTask

    Provider<? extends LinkSharedLibrary> getLinkTask()
    Returns the link task for the shared library.