Skip to content

Instantly share code, notes, and snippets.

@BowlingX
Created November 21, 2012 14:13
Show Gist options
  • Save BowlingX/4125027 to your computer and use it in GitHub Desktop.
Save BowlingX/4125027 to your computer and use it in GitHub Desktop.
Simple Jetty Launcher
package com.yourcompany
import org.eclipse.jetty.server.Server
import org.eclipse.jetty.webapp.WebAppContext
/**
* This describes our Main Entry point to launch YourApp
* Launches an embedded Jetty Server
*/
class YourAppLauncher extends App with Logging {
val thisArgs = if (0 == args.size) {
// Default Arguments:
Array("8080")
} else args
val Array(port) = thisArgs
val server = new Server(port.toInt)
val context = getClass.getClassLoader.getResource("webapp").toExternalForm
val root = new WebAppContext(context, "/")
Runtime.getRuntime.addShutdownHook(new Thread() {
override def run() {
server.stop()
}
})
server.setHandler(root)
server.start()
server.join()
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment