<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Scala on What's done is done</title><link>https://igawa.io/tags/scala/</link><description>Recent content in Scala on What's done is done</description><generator>Hugo</generator><language>ja</language><lastBuildDate>Sat, 02 Jul 2011 05:43:00 +0900</lastBuildDate><atom:link href="https://igawa.io/tags/scala/index.xml" rel="self" type="application/rss+xml"/><item><title>Cloud Foundry で Scalatra アプリを実行</title><link>https://igawa.io/posts/2011/07/cloud-foundry-%E3%81%A7-scalatra-%E3%82%A2%E3%83%97%E3%83%AA%E3%82%92%E5%AE%9F%E8%A1%8C/</link><pubDate>Sat, 02 Jul 2011 05:43:00 +0900</pubDate><guid>https://igawa.io/posts/2011/07/cloud-foundry-%E3%81%A7-scalatra-%E3%82%A2%E3%83%97%E3%83%AA%E3%82%92%E5%AE%9F%E8%A1%8C/</guid><description>&lt;p&gt;&lt;a href="https://picasaweb.google.com/lh/photo/yZtdpG7qkZc_OfWy78PCPw?feat=embedwebsite"&gt;&lt;img alt="picture" loading="lazy" src="https://lh3.googleusercontent.com/-FMIXumcTAV0/Tjr6wfSrWEI/AAAAAAAAg6M/d80dUsZSc_A/s800/5892056768_b3f93f8618_o.png"&gt;
&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Cloud Foundry で &lt;a href="https://github.com/scalatra/scalatra"&gt;Scalatra&lt;/a&gt;
アプリを実行してみます。
Scalatra
自体については、&lt;a href="http://www.google.co.jp/search?q=scalatra"&gt;ググって&lt;/a&gt;ください。
:-P&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;del&gt;sbtをインストール
インストール方法は、&lt;a href="http://b.0r2.info/?p=1508"&gt;Mac で Scala と Lift を使ってみる(1)
インストール編&lt;/a&gt;に記載した通りです。
Linuxならばapt-getやyum等でインストールできるかもしれません。
Windowsはわかりませんw&lt;/del&gt;
下記のgit cloneでsbtも取得できるので不要&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;sbtアプリ作成＆テスト実行
&lt;a href="https://github.com/scalatra/scalatra"&gt;Quick start (SBT
0.7.x)&lt;/a&gt;に書かれている方法を実行します。&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ git clone git://github.com/scalatra/scalatra-sbt-prototype.git my-app
$ cd my-app
$ ./sbt
&amp;gt; update
&amp;gt; jetty-run
&amp;gt; ~prepare-webapp
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;で、あとは、&lt;a href="http://localhost:8080/"&gt;http://localhost:8080/&lt;/a&gt;
へアクセスすれば、上記の様な画面が表示されると思います。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Cloud Foundryへpush&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ sbt package
$ vmc push --path target/scala_2.8.1
Application Name: 好きなアプリケーション名を入力
Application Deployed URL: 'アプリケーション名.cloudfoundry.com'?
Detected a Java Web Application, is this correct? [Yn]:
Memory Reservation [Default:512M] (64M, 128M, 256M, 512M or 1G)
Creating Application: OK
Would you like to bind any services to '好きなアプリケーション名'? [yN]:
Uploading Application:
Checking for available resources: OK
Processing resources: OK
Packing application: OK
Uploading (9K): OK
Push Status: OK
Staging Application: OK
Starting Application: OK
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;とすれば、warファイルが作成され、Cloud Foundryへpushできますが、
１点注意点があります。デフォルトでは、scala-compiler.jarがwarファイルに含まれないらしく、
このwarファイルをvmc pushしても実行時にエラーとなります。
&lt;a href="http://d.hatena.ne.jp/fits/20110521/1305942644"&gt;http://d.hatena.ne.jp/fits/20110521/1305942644&lt;/a&gt;
というわけで、以下の修正を加えた後、&lt;/p&gt;</description></item><item><title>Play framework で Scala を 試してみる</title><link>https://igawa.io/posts/2011/06/play-framework-%E3%81%A7-scala-%E3%82%92-%E8%A9%A6%E3%81%97%E3%81%A6%E3%81%BF%E3%82%8B/</link><pubDate>Sat, 18 Jun 2011 05:19:00 +0900</pubDate><guid>https://igawa.io/posts/2011/06/play-framework-%E3%81%A7-scala-%E3%82%92-%E8%A9%A6%E3%81%97%E3%81%A6%E3%81%BF%E3%82%8B/</guid><description>&lt;p&gt;&lt;a href="http://www.flickr.com/photos/31362181@N08/5843344046/" title="Scala Play"&gt;&lt;img alt="Scala\nPlay" loading="lazy" src="http://farm4.static.flickr.com/3010/5843344046_490f31de82.jpg"&gt;{.alignnone}&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://typesafe.com/"&gt;Typesafe.com&lt;/a&gt;のページを見ていたところ、右下に、&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.flickr.com/photos/31362181@N08/5843344316/" title="for Play"&gt;&lt;img alt="for\nPlay" loading="lazy" src="http://farm4.static.flickr.com/3102/5843344316_86b19cf8ae_m.jpg"&gt;{.alignnone}&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;の、アイコン＆リンクがあるのに気づき、クリックしたところ、前述の&lt;a href="http://scala.playframework.org/"&gt;scala.playframework.org&lt;/a&gt;の
Play framework Scala ページにたどり着きました。
なんだか面白そうなので、試してみることにしました。&lt;/p&gt;
&lt;p&gt;バイナリダウンロード
&lt;a href="http://www.playframework.org/download"&gt;http://www.playframework.org/download&lt;/a&gt;より、Play
frameworkバイナリをダウンロードします。&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.flickr.com/photos/31362181@N08/5843344188/" title="Play download"&gt;&lt;img alt="Play\ndownload" loading="lazy" src="http://farm6.static.flickr.com/5075/5843344188_57d2960417.jpg"&gt;{.alignnone}&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;ダウンロードファイル解凍&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ unzip Downloads/play-1.2.1.zip
Archive: Downloads/play-1.2.1.zip
Play! 1.2.1
(省略)
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;リンク作成&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ ln -s play-1.2.1 play-latest
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;環境変数PATHに追加
以下の様なものを.bashrcに追加し、反映させます。&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ cat ~/.bashrc
export PLAY_HOME=${HOME}/play-latest
export PATH=${PATH}:${PLAY_HOME}
$ . ~/.bashrc
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;テスト&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ play -version
~ _ _
~ _ __ | | __ _ _ _| |
~ | '_ \| |/ _' | || |_|
~ | __/|_|\____|\__ (_)
~ |_| |__/
~
~ play! 1.2.1, http://www.playframework.org
~
~ Usage: play cmd [app_path] [--options]
~
~ with, new Create a new application
~ run Run the application in the current shell
~ help Show play help
~
~ Invalid command: -version
~
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;問題無し。&lt;/p&gt;</description></item><item><title>Scalaスケーラブルプログラミング（コップ本）購入</title><link>https://igawa.io/posts/2011/06/scala%E3%82%B9%E3%82%B1%E3%83%BC%E3%83%A9%E3%83%96%E3%83%AB%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%82%B3%E3%83%83%E3%83%97%E6%9C%AC%E8%B3%BC%E5%85%A5/</link><pubDate>Wed, 15 Jun 2011 05:45:00 +0900</pubDate><guid>https://igawa.io/posts/2011/06/scala%E3%82%B9%E3%82%B1%E3%83%BC%E3%83%A9%E3%83%96%E3%83%AB%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%82%B3%E3%83%83%E3%83%97%E6%9C%AC%E8%B3%BC%E5%85%A5/</guid><description>&lt;p&gt;&lt;a href="http://www.flickr.com/photos/masayun/5833994866/" title="Scalaスケーラブルプログラミング by masayukig, on Flickr"&gt;&lt;img alt="Scalaスケーラブルプログラミング" loading="lazy" src="http://farm3.static.flickr.com/2592/5833994866_b0a8f0e29f.jpg"&gt;
&lt;/a&gt;
&lt;a href="http://www.amazon.co.jp/gp/product/4844327453/ref=as_li_ss_tl?ie=UTF8&amp;amp;tag=hughundercons-22&amp;amp;linkCode=as2&amp;amp;camp=247&amp;amp;creative=7399&amp;amp;creativeASIN=4844327453"&gt;Scalaスケーラブルプログラミング[コンセプト&amp;amp;コーディング] (Programming
in
Scala)&lt;/a&gt;&lt;img alt="picture" loading="lazy" src="http://www.assoc-amazon.jp/e/ir?t=&amp;l=as2&amp;o=9&amp;a=4844327453"&gt;
（コップ本）を購入しました。&lt;/p&gt;
&lt;p&gt;まだ、１章を読み終え、２章に入ったばかりですが、
原題にある「Step-by-step Guide」というものの通り、
非常にいい感じでわかりやすいと思います。&lt;/p&gt;
&lt;p&gt;実は、このコップ本の前に、
&lt;a href="http://www.amazon.co.jp/gp/product/4822284239/ref=as_li_ss_tl?ie=UTF8&amp;amp;tag=hughundercons-22&amp;amp;linkCode=as2&amp;amp;camp=247&amp;amp;creative=7399&amp;amp;creativeASIN=4822284239"&gt;Scalaプログラミング入門&lt;/a&gt;&lt;img alt="picture" loading="lazy" src="http://www.assoc-amazon.jp/e/ir?t=&amp;l=as2&amp;o=9&amp;a=4822284239"&gt;&lt;/p&gt;
&lt;p&gt;を、図書館で借りて読んでいたのですが、何となく「わかりづらいなー」と、
感じていました。
もしかしたら、もうちょっとコップ本で学習してから、
もう一度読むと良いのかもしれません。&lt;/p&gt;
&lt;p&gt;&lt;a href="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=hughundercons-22&amp;amp;o=9&amp;amp;p=8&amp;amp;l=as4&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;ref=ss_til&amp;amp;asins=4844327453"&gt;http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=hughundercons-22&amp;amp;o=9&amp;amp;p=8&amp;amp;l=as4&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;ref=ss_til&amp;amp;asins=4844327453&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Mac で Scala と Lift を使ってみる(2) Cloud Foundry編</title><link>https://igawa.io/posts/2011/06/mac-%E3%81%A7-scala-%E3%81%A8-lift-%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%81%BF%E3%82%8B2-cloud-foundry%E7%B7%A8/</link><pubDate>Sat, 11 Jun 2011 06:00:00 +0900</pubDate><guid>https://igawa.io/posts/2011/06/mac-%E3%81%A7-scala-%E3%81%A8-lift-%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%81%BF%E3%82%8B2-cloud-foundry%E7%B7%A8/</guid><description>&lt;p&gt;「Mac で Scala と Lift を使ってみる」の2回目&lt;/p&gt;
&lt;p&gt;今度は、作成したアプリをCloud Foundryへpushしてみます。
つい最近、&lt;a href="http://cloudfoundry.com/"&gt;Cloud
Foundry&lt;/a&gt;が&lt;a href="http://blog.cloudfoundry.com/post/6109591023/cloud-foundry-now-supporting-scala"&gt;Scala-Liftに対応した&lt;/a&gt;ので可能になりました。&lt;/p&gt;
&lt;p&gt;今度は、「ゆろよろ日記」さんのサイト：
&lt;a href="http://d.hatena.ne.jp/yuroyoro/20080808/1218168453"&gt;http://d.hatena.ne.jp/yuroyoro/20080808/1218168453&lt;/a&gt;
記述を参考にしました。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;アプリを作成&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ mvn archetype:create -U -DarchetypeGroupId=net.liftweb -DarchetypeArtifactId=lift-archetype-basic -DarchetypeVersion=0.9 -DremoteRepositories=http://scala-tools.org/repo-releases -DgroupId=org.orzlabs -DartifactId=hello-lift
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;パッケージ作成&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ cd hello-lift/
$ mvn package
$ ls -l target
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;warファイルが作成されていることを確認します。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Cloud Foundryへpush
以下手順からは、事前に、&lt;a href="http://cloudfoundry.com/"&gt;Cloud
Foundry&lt;/a&gt;にて、sign
upを済ませておく必要があります。&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ gem install vmc (vmcをインストールしてない場合)
$ vmc target api.cloudfoundry.com
$ vmc login
$ vmc push --path target/
(以下の内容を聞かれるので、適当に入力)
Application Name: xxxxx (アプリケーション名。好きな様につけて良い。)
Application Deployed URL: 'xxxxx.cloudfoundry.com'? (デフォルトで良ければ単にEnter。アクセスするURLを指定する)
Detected a Java Web Application, is this correct? [Yn]: (Enter)
Memory Reservation [Default:512M] (64M, 128M, 256M, 512M or 1G) (デフォルトで良ければ単にEnter)
Creating Application: OK
Would you like to bind any services to 'nano'? [yN]: (DBを使用したければy。今回はとりあえず不要なのでN)
Uploading Application:
Checking for available resources: OK
Processing resources: OK
Packing application: OK
Uploading (7M): OK
Push Status: OK
Staging Application: OK
Starting Application: OK
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Webブラウザでアクセス&lt;/p&gt;</description></item><item><title>Mac で Scala と Lift を使ってみる(1) インストール編</title><link>https://igawa.io/posts/2011/06/mac-%E3%81%A7-scala-%E3%81%A8-lift-%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%81%BF%E3%82%8B1-%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E7%B7%A8/</link><pubDate>Fri, 10 Jun 2011 06:06:00 +0900</pubDate><guid>https://igawa.io/posts/2011/06/mac-%E3%81%A7-scala-%E3%81%A8-lift-%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%81%BF%E3%82%8B1-%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E7%B7%A8/</guid><description>&lt;p&gt;Scala と Lift が気になってきたので、インストール。
くろだろぐさん： &lt;a href="http://kuroda.exblog.jp/12093277/"&gt;http://kuroda.exblog.jp/12093277/&lt;/a&gt; の記述を参考に、
最新版っぽいscala29をインストールした。&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;sudo port selfupdate
sudo port upgrade outdated
sudo port install scala28 scala29 maven2
sudo port select --set maven maven2
sudo scala_select scala29
scala -version
sudo port install sbt
mvn archetype:generate -U
-DarchetypeGroupId=net.liftweb
-DarchetypeArtifactId=lift-archetype-basic_2.8.1
-DarchetypeVersion=2.3
-DarchetypeRepository=http://scala-tools.org/repo-snapshots
-DremoteRepositories=http://scala-tools.org/repo-snapshots
-DgroupId=your.com
-DartifactId=sample
-Dversion=1.0
cd sample
sbt update
sbt ~jetty-run
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;で、できた。&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.flickr.com/photos/31362181@N08/5815832647/" title="mac de Scala/Lift sample"&gt;&lt;img alt="mac de Scala/Lift\nsample" loading="lazy" src="http://farm6.static.flickr.com/5261/5815832647_168f6767f5.jpg"&gt;{.alignnone}&lt;/a&gt;&lt;/p&gt;</description></item></channel></rss>