This section provides an overview of what playframework is, and why a developer might want to use it.
It should also mention any large subjects within playframework, and link out to the related topics. Since the Documentation for playframework is new, you may need to create initial versions of those related topics.
To run the Play framework, you need Java 6 or later. If you wish to build Play from source, you will need the Git source control client to fetch the source code and Ant to build it.
Be sure to have Java in the current path (enter
java --version to check)
Play will use the default Java or the one available at the $JAVA_HOME path if defined.
The play command line utility uses Python. So it should work out of the box on any UNIX system (however it requires at least Python 2.5).
In general, the installation instructions are as follows.
Java is built-in, or installed automatically, so you can skip the first step.
/etc/pathsand add the line
An alternative on OS X is:
brew install play
To install Java, make sure to use either the Sun-JDK or OpenJDK (and not gcj which is the default Java command on many Linux distros)
To install Java, just download and install the latest JDK package. You do not need to install Python separately, because a Python runtime is bundled with the framework.
If you already have
sbt installed I find it easier to create a minimal Play project without
activator. Here's how.
# create a new folder mkdir myNewProject # launch sbt sbt
When previous steps are completed, edit
build.sbt and add the following lines
name := """myProjectName""" version := "1.0-SNAPSHOT" offline := true lazy val root = (project in file(".")).enablePlugins(PlayScala) scalaVersion := "2.11.6" # add required dependencies here .. below a list of dependencies I use libraryDependencies ++= Seq( jdbc, cache, ws, filters, specs2 % Test, "com.github.nscala-time" %% "nscala-time" % "2.0.0", "javax.ws.rs" % "jsr311-api" % "1.0", "commons-io" % "commons-io" % "2.3", "org.asynchttpclient" % "async-http-client" % "2.0.4", cache ) resolvers += "scalaz-bintray" at "http://dl.bintray.com/scalaz/releases" resolvers ++= Seq("snapshots", "releases").map(Resolver.sonatypeRepo) resolvers += "Typesafe Releases" at "http://repo.typesafe.com/typesafe/maven-releases/"
Finally, create a folder
project and inside create a file
build.properties with the reference to the version of Play you would like to use
addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.4.3")
That's it! Your project is ready. You can launch it with
sbt. From within
sbt you have access to the same commands as with
Download and install:
Java 8 - download the relevant installation from Oracle site.
Activator - download zip from www.playframework.com/download and extract files to the target Play folder, for example to:
sbt - download from www.scala-sbt.org.
Define environment variables:
JAVA_HOME, for example:
PLAY_HOME, for example:
SBT_HOME for example:
c:\Program Files (x86)\sbt\bin;
Add path to all three installed programs to the path variables:
Installation of Play 2.5.3 (the last 2.5 stable release) comes with a minor problem. To fix it:
Start the cmd from the directory, where a new application should be created. The shortest way to create a new application via CLI is to provide an application name and template as CLI arguments:
activator new my-play-app play-java
It is possible to run just:
In this case you will be prompted to select the desired template and an application name.
For Play 2.4 add manually to project/plugins.sbt:
// Use the Play sbt plugin for Play projects addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.4.x")
Be sure to replace 2.4.x here by the exact version you want to use. Play 2.5 generates this line automatically.
Make sure that the proper sbt version is mentioned in project/build.properties. It should match to sbt version, installed on your machine. For example, for Play2.4.x it should be:
That's it, a new application now may be started:
cd my-play-app activator run
After a while the server will start and the following prompt should appear on the console:
[info] p.c.s.NettyServer - Listening for HTTP on /0:0:0:0:0:0:0:0:9000 (Server started, use Ctrl+D to stop and go back to the console...)
The server by default is listening on port 9000. You can request it from a browser by the URL http://localhost:9000. You will get something like this:
By default the activator runs an application on port 9000 for http or 443 for https. To run an application on the different port (http):
activator "run 9005"