在Jelastic上使用Scala编程,jelasticscala编程
在Jelastic上使用Scala编程,jelasticscala编程
Scala是一个运行在JVM上的编程语言,可以很好地与各种运行和监控工具配合使用,也可以与Java或其他编程语言配合使用。Scala借鉴了很多其他语言里面简单、易读的语法。它的优势在于通过各种特性让开发者更有效率地工作。开发者通常认为Scala比起Java更偏向于函数式编程语言。实际上,它是一种混合面向对象和函数式的编程语言。像Scala这样的语言会吸引来自高技术团队里的更灵活、高水平和具有创新精神的开发者。接下来让我们开看如何在云应用里使用这门灵活的语言吧!
译注:Jelastic是一个Java和PHP的云应用托管。
建立环境
1. 登录Jelastic,点击创建环境按钮
2. 在Jelastic中建立你的环境,比如 Tomcat 7和 Java 7
创建应用
1. 首先在你的操作系统上安装sbt。这是一个Scala和Java项目的构建工具。
2. 现在让我们创建一个用于测试的简单Scala servlet应用程序。Helloworld.scala (src/main/scala/helloworld.scala)文件内容如下:
import javax.servlet.http._ class HelloWorldServlet extends HttpServlet { override def doGet(req: HttpServletRequest, resp: HttpServletResponse) = { resp.getWriter().print("Hello World!") } }
3. 在src/main/webapp 目录为你的项目新建 web.xml 文件:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN" "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd"> <web-app> <servlet> <servlet-name>HelloWorld</servlet-name> <servlet-class>HelloWorldServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>HelloWorld</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> </web-app>
构建和部署项目
Xsbt-web-plugin
1. 为WAR文件构建添加特殊插件,添加xsbt-web-plugin到project/plugins.sbt:
addSbtPlugin("com.earldouglas" % "xsbt-web-plugin" % "0.3.0")
2. 在项目的根目录创建build.sbt 文件。指定应用的名字、版本号、Scala版本和注入的插件配置:
name := "helloworld" version := "1.0" scalaVersion := "2.9.2" seq(webSettings :_*) libraryDependencies ++= Seq( "javax.servlet" % "servlet-api" % "2.5", "org.mortbay.jetty" % "jetty" % "6.1.22" % "container" )
3. 在根目录创建一个 build.properties文件并指定sbt版本,这样可以避免任何潜在的冲突:
sbt.version=0.12.4
4. 从你的根目录执行下一个命令,构建WAR文件:
>compile:package-war
刚生成的WAR文件会存在target/scala-x.x.x目录。
5. 回到Jelastic配置面板,将你的WAR包上传到部署管理器。
6. 将你的Scala应用程序部署到刚建立好的环境下。
Sbt-jelastic-deploy插件
1.为你的项目添加针对Jelastic的插件,以便进一步地部署。 Sbt-jelastic-deploy插件 依赖于xsbt-web-plugin和部署的WAR文件,这些文件由xsbt-web-plugin生成到Jelastic环境。通过在你的plugins.sbt (project/plugins.sbt) 文件中指定适当的配置启用sbt-jelastic-deploy。
addSbtPlugin("com.github.casualjim" % "sbt-jelastic-deploy"
2. 浏览到你的项目根目录并新建build.sbt文件。指定你的应用名称、版本号、Scala版本以及 Jelastic插件的Key值。
import JelasticKeys._ name := "helloworld" version := "1.0" scalaVersion := "2.9.2" seq(webSettings :_*) libraryDependencies ++= Seq( "javax.servlet" % "servlet-api" % "2.5", "org.mortbay.jetty" % "jetty" % "6.1.22" % "container" ) seq(jelasticSettings:_*) email in deploy := "your_email_address" password in deploy := "your_jelastic_password" apiHoster := "your_hoster's_api" environment in deploy := "your_jelastic_environment_name" context in deploy := "context_for_your_app"
Note: Blank lines are required in order to separate each item.
3. 在helloworld目录创建build.properties并指定sbt版本避免潜在的冲突:
1 | sbt.version = 0.12 . 4 |
4. 使用上传任务建立一个WAR文件并上传到Jelastic部署管理器以便下一步的部署。使用部署任务建立一个WAR文件,上传并部署到指定的环境和上下文。
<em>>sbt upload</em>
<em>>sbt deploy</em>
瞧!这就是你的Scala云应用!
本文通过一个简单的示例说明如何开始。你可以使用上面提到的插件来建立自己的WAR包并部署到你的环境。
原文链接: dzone 翻译: Wld5.com - 唐尤华译文链接: http://www.wld5.com/5482.html
[ 转载请保留原文出处、译者和译文链接。]
用户点评