trait ProcessCreation extends AnyRef
Factories for creating scala.sys.process.ProcessBuilder. They can be found on and used through scala.sys.process.Process's companion object.
- Source
- Process.scala
- Alphabetic
- By Inheritance
- ProcessCreation
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- All
Value Members
-
def
apply(name: String, exitValue: ⇒ Int): ProcessBuilder
Creates a scala.sys.process.ProcessBuilder from a
String
name and aBoolean
.Creates a scala.sys.process.ProcessBuilder from a
String
name and aBoolean
. This can be used to force an exit value, with the name being used fortoString
. -
def
apply(value: Boolean): ProcessBuilder
Creates a scala.sys.process.ProcessBuilder from a
Boolean
.Creates a scala.sys.process.ProcessBuilder from a
Boolean
. This can be to force an exit value. -
def
apply(url: URL): URLBuilder
Creates a scala.sys.process.ProcessBuilder from a
java.net.URL
.Creates a scala.sys.process.ProcessBuilder from a
java.net.URL
. ThisProcessBuilder
can then be used as aSource
, so that one can pipe things from it. -
def
apply(file: File): FileBuilder
Creates a scala.sys.process.ProcessBuilder from a
java.io.File
.Creates a scala.sys.process.ProcessBuilder from a
java.io.File
. ThisProcessBuilder
can then be used as aSource
or aSink
, so one can pipe things from and to it. -
def
apply(builder: JProcessBuilder): ProcessBuilder
Creates a scala.sys.process.ProcessBuilder from a
java.lang.ProcessBuilder
.Creates a scala.sys.process.ProcessBuilder from a
java.lang.ProcessBuilder
.apply((new java.lang.ProcessBuilder("ls", "-l")) directory new java.io.File(System.getProperty("user.home")))
Example: -
def
apply(command: Seq[String], cwd: Option[File], extraEnv: (String, String)*): ProcessBuilder
Creates a scala.sys.process.ProcessBuilder with working dir optionally set to
File
and extra environment variables.Creates a scala.sys.process.ProcessBuilder with working dir optionally set to
File
and extra environment variables.apply("java" :: javaArgs, params.get("cwd"), "CLASSPATH" -> "library.jar")
Example: -
def
apply(command: String, cwd: Option[File], extraEnv: (String, String)*): ProcessBuilder
Creates a scala.sys.process.ProcessBuilder with working dir optionally set to
File
and extra environment variables.Creates a scala.sys.process.ProcessBuilder with working dir optionally set to
File
and extra environment variables.apply("java", params.get("cwd"), "CLASSPATH" -> "library.jar")
Example: -
def
apply(command: Seq[String], cwd: File, extraEnv: (String, String)*): ProcessBuilder
Creates a scala.sys.process.ProcessBuilder with working dir set to
File
and extra environment variables.Creates a scala.sys.process.ProcessBuilder with working dir set to
File
and extra environment variables.apply("java" :: javaArgs, new java.io.File("/opt/app"), "CLASSPATH" -> "library.jar")
Example: -
def
apply(command: String, cwd: File, extraEnv: (String, String)*): ProcessBuilder
Creates a scala.sys.process.ProcessBuilder with working dir set to
File
and extra environment variables.Creates a scala.sys.process.ProcessBuilder with working dir set to
File
and extra environment variables.apply("java", new java.io.File("/opt/app"), "CLASSPATH" -> "library.jar")
Example: -
def
apply(command: String, arguments: Seq[String]): ProcessBuilder
Creates a scala.sys.process.ProcessBuilder from a command represented by a
String
, and a sequence ofString
representing the arguments.Creates a scala.sys.process.ProcessBuilder from a command represented by a
String
, and a sequence ofString
representing the arguments.apply("cat", files)
Example: -
def
apply(command: Seq[String]): ProcessBuilder
Creates a scala.sys.process.ProcessBuilder from a sequence of
String
, where the head is the command and each element of the tail is a parameter.Creates a scala.sys.process.ProcessBuilder from a sequence of
String
, where the head is the command and each element of the tail is a parameter.apply("cat" :: files)
Example: -
def
apply(command: String): ProcessBuilder
Creates a scala.sys.process.ProcessBuilder from a
String
, including the parameters.Creates a scala.sys.process.ProcessBuilder from a
String
, including the parameters.apply("cat file.txt")
Example: -
def
applySeq[T](builders: Seq[T])(implicit convert: (T) ⇒ Source): Seq[Source]
Creates a sequence of scala.sys.process.ProcessBuilder.Source from a sequence of something else for which there's an implicit conversion to
Source
. -
def
cat(files: Seq[Source]): ProcessBuilder
Creates a scala.sys.process.ProcessBuilder from a non-empty sequence of scala.sys.process.ProcessBuilder.Source, which can then be piped to something else.
Creates a scala.sys.process.ProcessBuilder from a non-empty sequence of scala.sys.process.ProcessBuilder.Source, which can then be piped to something else.
This will concatenate the output of all sources.
-
def
cat(file: Source, files: Source*): ProcessBuilder
Creates a scala.sys.process.ProcessBuilder from one or more scala.sys.process.ProcessBuilder.Source, which can then be piped to something else.
Creates a scala.sys.process.ProcessBuilder from one or more scala.sys.process.ProcessBuilder.Source, which can then be piped to something else.
This will concatenate the output of all sources. For example:
import scala.sys.process._ import scala.sys.process.Process.cat import java.net.URL import java.io.File val spde = new URL("http://technically.us/spde.html") val dispatch = new URL("https://dispatchhttp.org/Dispatch.html") val build = new File("project/build.properties") cat(spde, dispatch, build) #| "grep -i scala" !
This is the documentation for the Scala standard library.
Package structure
The scala package contains core types like
Int
,Float
,Array
orOption
which are accessible in all Scala compilation units without explicit qualification or imports.Notable packages include:
scala.collection
and its sub-packages contain Scala's collections frameworkscala.collection.immutable
- Immutable, sequential data-structures such asVector
,List
,Range
,HashMap
orHashSet
scala.collection.mutable
- Mutable, sequential data-structures such asArrayBuffer
,StringBuilder
,HashMap
orHashSet
scala.collection.concurrent
- Mutable, concurrent data-structures such asTrieMap
scala.collection.parallel.immutable
- Immutable, parallel data-structures such asParVector
,ParRange
,ParHashMap
orParHashSet
scala.collection.parallel.mutable
- Mutable, parallel data-structures such asParArray
,ParHashMap
,ParTrieMap
orParHashSet
scala.concurrent
- Primitives for concurrent programming such asFutures
andPromises
scala.io
- Input and output operationsscala.math
- Basic math functions and additional numeric types likeBigInt
andBigDecimal
scala.sys
- Interaction with other processes and the operating systemscala.util.matching
- Regular expressionsOther packages exist. See the complete list on the right.
Additional parts of the standard library are shipped as separate libraries. These include:
scala.reflect
- Scala's reflection API (scala-reflect.jar)scala.xml
- XML parsing, manipulation, and serialization (scala-xml.jar)scala.swing
- A convenient wrapper around Java's GUI framework called Swing (scala-swing.jar)scala.util.parsing
- Parser combinators (scala-parser-combinators.jar)Automatic imports
Identifiers in the scala package and the
scala.Predef
object are always in scope by default.Some of these identifiers are type aliases provided as shortcuts to commonly used classes. For example,
List
is an alias forscala.collection.immutable.List
.Other aliases refer to classes provided by the underlying platform. For example, on the JVM,
String
is an alias forjava.lang.String
.