Package org.gradle.plugins.ide.eclipse.model

## Class ProjectDependency

- java.lang.Object
- - org.gradle.plugins.ide.eclipse.model.AbstractClasspathEntry
  - - org.gradle.plugins.ide.eclipse.model.ProjectDependency

- All Implemented Interfaces:
    `ClasspathEntry`

      public class ProjectDependency
      extends AbstractClasspathEntry

  A classpath entry representing a project dependency.

- - ### Field Summary

    - ### Fields inherited from class org.gradle.plugins.ide.eclipse.model.AbstractClasspathEntry

      `accessRules, COMPONENT_DEPENDENCY_ATTRIBUTE, COMPONENT_NON_DEPENDENCY_ATTRIBUTE, entryAttributes, exported, path`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `ProjectDependency​(Node node)` |
    `ProjectDependency​(String path)` | Create a dependency on another Eclipse project.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `buildDependencies​(Object... buildDependencies)` | Sets the tasks to be executed to build the the file returned by `getPublication()`
    `boolean` | `equals​(Object o)` |
    `TaskDependency` | `getBuildDependencies()` | Returns the tasks to be executed to build the the file returned by `getPublication()`
    `String` | `getKind()` |
    `FileReference` | `getPublication()` | Returns the file that can replace this ProjectDependency
    `FileReference` | `getPublicationJavadocPath()` | Returns the javadoc artifact of the project publication
    `FileReference` | `getPublicationSourcePath()` | Returns the source artifact of the project publication
    `int` | `hashCode()` |
    `void` | `setPublication​(FileReference publication)` | Sets the file that can replace this ProjectDependency
    `void` | `setPublicationJavadocPath​(FileReference publicationJavadocPath)` | Sets the javadoc artifact of the project publication
    `void` | `setPublicationSourcePath​(FileReference publicationSourcePath)` | Sets the source artifact of the project publication
    `String` | `toString()` |

    - ### Methods inherited from class org.gradle.plugins.ide.eclipse.model.AbstractClasspathEntry

      `addClasspathEntry, appendNode, getAccessRules, getEntryAttributes, getNativeLibraryLocation, getPath, isExported, normalizePath, setAccessRules, setExported, setNativeLibraryLocation, setPath, writeEntryAttributes`

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

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### ProjectDependency

          public ProjectDependency​(Node node)

    - #### ProjectDependency

          public ProjectDependency​(String path)

      Create a dependency on another Eclipse project.
      Parameters:
        `path` - The path to the Eclipse project, which is the name of the eclipse project preceded by "/".

  - ### Method Detail

    - #### getPublication

          @Incubating
          public FileReference getPublication()

      Returns the file that can replace this ProjectDependency
      Since:
        5.6

    - #### setPublication

          @Incubating
          public void setPublication​(FileReference publication)

      Sets the file that can replace this ProjectDependency
      Since:
        5.6

    - #### getPublicationSourcePath

          @Incubating
          public FileReference getPublicationSourcePath()

      Returns the source artifact of the project publication
      Since:
        5.6
      See Also:
        `getPublication()`

    - #### setPublicationSourcePath

          @Incubating
          public void setPublicationSourcePath​(FileReference publicationSourcePath)

      Sets the source artifact of the project publication
      Since:
        5.6
      See Also:
        `getPublication()`

    - #### getPublicationJavadocPath

          @Incubating
          public FileReference getPublicationJavadocPath()

      Returns the javadoc artifact of the project publication
      Since:
        5.6
      See Also:
        `getPublication()`

    - #### setPublicationJavadocPath

          @Incubating
          public void setPublicationJavadocPath​(FileReference publicationJavadocPath)

      Sets the javadoc artifact of the project publication
      Since:
        5.6
      See Also:
        `getPublication()`

    - #### getBuildDependencies

          @Incubating
          public TaskDependency getBuildDependencies()

      Returns the tasks to be executed to build the the file returned by `getPublication()`

      This property doesn't have a direct effect to the Gradle Eclipse plugin's behaviour. It is used, however, by Buildship to execute the configured tasks each time before the user imports the project or before a project synchronization starts in case this project is closed to build the substitute jar.

      Since:
        5.6

    - #### buildDependencies

          @Incubating
          public void buildDependencies​(Object... buildDependencies)

      Sets the tasks to be executed to build the the file returned by `getPublication()`
      Since:
        5.6
      See Also:
        `getBuildDependencies()`

    - #### equals

          public boolean equals​(Object o)

      Overrides:
        `equals` in class `AbstractClasspathEntry`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `AbstractClasspathEntry`

    - #### getKind

          public String getKind()

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `AbstractClasspathEntry`