Class Path

  • All Implemented Interfaces:
    java.lang.Comparable<Path>

    public class Path
    extends java.lang.Object
    implements java.lang.Comparable<Path>
    Represents a path in Gradle.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static Path ROOT  
      static java.lang.String SEPARATOR  
    • Field Detail

      • ROOT

        public static final Path ROOT
    • Method Detail

      • path

        public static Path path​(@Nullable
                                java.lang.String path)
      • validatePath

        @Incubating
        public static void validatePath​(@Nullable
                                        java.lang.String path)
        throws if no path is specified
        Since:
        8.5
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • append

        public Path append​(Path path)
        Appends the supplied path to this path, returning the new path. The resulting path with be absolute or relative based on the path being appended _to_. It makes no difference if the _appended_ path is absolute or relative.
         path(':a:b').append(path(':c:d')) == path(':a:b:c:d')
         path(':a:b').append(path('c:d')) == path(':a:b:c:d')
         path('a:b').append(path(':c:d')) == path('a:b:c:d')
         path('a:b').append(path('c:d')) == path('a:b:c:d')
         
      • getPath

        public java.lang.String getPath()
      • segments

        @Incubating
        public java.util.List<java.lang.String> segments()
        returns an immutable list of the segments of this path
        Since:
        8.5
      • equals

        public boolean equals​(@Nullable
                              java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • compareTo

        public int compareTo​(Path other)
        Specified by:
        compareTo in interface java.lang.Comparable<Path>
      • getParent

        @Nullable
        public Path getParent()
        Returns the parent of this path, or null if this path has no parent.
        Returns:
        The parent of this path.
      • getName

        @Nullable
        public java.lang.String getName()
        Returns the base name of this path, or null if this path is the root path.
        Returns:
        The base name,
      • child

        public Path child​(java.lang.String name)
        Creates a child of this path with the given name.
      • absolutePath

        public java.lang.String absolutePath​(java.lang.String path)
        Resolves the given name relative to this path. If an absolute path is provided, it is returned.
      • absolutePath

        public Path absolutePath​(Path path)
      • isAbsolute

        public boolean isAbsolute()
      • relativePath

        public java.lang.String relativePath​(java.lang.String path)
        Calculates a path relative to this path. If the given path is not a child of this path, it is returned unmodified.
      • relativePath

        public Path relativePath​(Path path)
      • segmentCount

        public int segmentCount()
      • removeFirstSegments

        public Path removeFirstSegments​(int n)
      • segment

        public java.lang.String segment​(int index)
      • takeFirstSegments

        @Incubating
        public Path takeFirstSegments​(int n)
        Returns a Path containing only the first n segments of this Path. The returned Path will be absolute if this Path is absolute.
        Parameters:
        n - number of segments to take from this Path, must be greater than or equal to 1
        Since:
        8.4