final class JrtClassPath extends ClassPath with NoSourcePaths

Implementation ClassPath based on the JDK 9 encapsulated runtime modules (JEP-220)

https://bugs.openjdk.java.net/browse/JDK-8066492 is the most up to date reference for the structure of the jrt:// filesystem.

The implementation assumes that no classes exist in the empty package.

Linear Supertypes
NoSourcePaths, ClassPath, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. JrtClassPath
  2. NoSourcePaths
  3. ClassPath
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new JrtClassPath(fs: FileSystem)

Type Members

  1. type F = Path

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def asClassPathString: String

    The whole classpath in the form of one String.

    The whole classpath in the form of one String.

    Definition Classes
    ClassPath
  5. def asClassPathStrings: Seq[String]
    Definition Classes
    JrtClassPathClassPath
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. final def asSourcePathString: String
    Definition Classes
    NoSourcePaths
  8. def asURLs: Seq[URL]
    Definition Classes
    JrtClassPathClassPath
  9. final def classes(inPackage: String): Seq[ClassFileEntry]
    Definition Classes
    ClassPath
  10. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  11. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  12. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  13. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  14. def findClass(className: String): Option[ClassRepresentation]

    Returns the class file and / or source file for a given external name, e.g., "java.lang.String".

    Returns the class file and / or source file for a given external name, e.g., "java.lang.String". If there is both a class file and source file, the compiler can decide whether to read the class file or compile the source file.

    Internally this seems to be used only by ScriptRunner, but only to call .isDefined. That could probably be implemented differently.

    Externally, it is used by sbt's compiler interface: https://github.com/sbt/sbt/blob/v0.13.15/compile/interface/src/main/scala/xsbt/CompilerInterface.scala#L249 Jason has some improvements for that in the works (https://github.com/scala/bug/issues/10289#issuecomment-310022699)

    Definition Classes
    ClassPath
  15. def findClassFile(className: String): Option[AbstractFile]

    Returns the classfile for an external name, e.g., "java.lang.String".

    Returns the classfile for an external name, e.g., "java.lang.String". This method does not return source files.

    This method is used by the classfile parser. When parsing a Java class, its own inner classes are entered with a ClassfileLoader that parses the classfile returned by this method. It is also used in the backend, by the inliner, to obtain the bytecode when inlining from the classpath. It's also used by scalap.

    Definition Classes
    JrtClassPathClassPath
  16. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  17. final def hasPackage(pkg: String): Boolean
    Definition Classes
    ClassPath
  18. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  19. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  20. final def list(inPackage: String): ClassPathEntries
    Definition Classes
    ClassPath
  21. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  22. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  23. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  24. final def packages(inPackage: String): Seq[PackageEntry]
    Definition Classes
    ClassPath
  25. final def sources(inPackage: String): Seq[SourceFileEntry]
    Definition Classes
    ClassPath
  26. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  27. def toString(): String
    Definition Classes
    AnyRef → Any
  28. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  29. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  30. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()

Deprecated Value Members

  1. def asClasspathString: String
    Definition Classes
    ClassPath
    Annotations
    @deprecated
    Deprecated

    (Since version 2.11.5) use asClassPathString instead of this one

Inherited from NoSourcePaths

Inherited from ClassPath

Inherited from AnyRef

Inherited from Any

Ungrouped