TIS ENGINEER NOTE

ITエンジニアのためのキャリア向上ノウハウブログ

プログラミング

Scalaの開発環境を構築する

更新日:

オブジェクト指向プログラミングと関数型プログラミングの二刀流が可能(細かい定義はツッコミなしで)という中二病的にビビッとくる設定特性を持ったプログラミング言語Scala。

今日はそのScalaの開発環境をMac上に構築したので、その手順について共有していこうと思います。

各種インストール

Java

まずはscalaをインストールと言いたいところですが、その前にjavaをインストールする必要があります。そのままscalaをインストールしようとすると怒られます(怒られました)。

brew caskが使えない時は先にbrew-caskをインストールしておきましょう。自分は特にcaskのインストール不要でしたので、導入したタイミングによって要否が変わってくるかと。

brew install caskroom/cask/brew-cask
brew cask install java

途中でsudoパスワードを尋ねられますので、入力してインストールを継続しましょう。結構時間かかるのでコーヒーでも飲んでまったりしましょう。

Scala

javaのインストールが完了したら、念願のScalaインストールです。

brew install scala

sbt

次にScalaで開発する上で必要となってくるビルドツールであるsbtをインストールしておきます。

brew install sbt

しかしbrew caskでインストールされたjavaがjava9の場合、sbtのインストールが失敗してしまいます。(2017/11実施時に発生)

sbt: Java 1.8 is required to install this formula.
JavaRequirement unsatisfied!

こんな感じのメッセージが出てインストールが失敗した場合、以下の手順を実施してみてください。

brew cask uninstall java
brew tap caskroom/versions
brew cask install java8
brew install sbt

無事インストールが完了すれば、sbtコマンドが正常に動作するようになります。

ディレクトリ作成

sbtのインストールが完了したらsbtの推奨する構成でプロジェクトディレクトリを作成します。

プロジェクトディレクトリを作成したいディレクトリで以下のコマンドを実施します。

sbt new sbt/scala-seed.g8

途中でプロジェクト名を尋ねられますので、作成したプロジェクト名称を入力しましょう。

name [Scala Seed Project]: scala-sample

~/workspaceというディレクトリで実行した場合、workspace/scala-sampleというディレクトリが作成され、その配下にsbt用のディレクトリが配置されています。build.sbtファイルなんかも自動で作成・記述してくれるので、手動で構築するより簡単でミスも発生しにくいためオススメです。

作成されたプロジェクトディレクトリに移動して、早速sbtを走らせてみましょう。newコマンドでサンプルコードも配置されますので、そちらが実行されます。ちなみに最初の実行時は各種インストールが走りますので、ちょっと時間がかかります。

見え辛いですが、出力コマンド内にhelloという文字列が存在していれば上手く動いてくれています。

みんな大好きHello World

サンプル動かすだけではちょっと寂しいので自分でファイルを作って動かしてみましょう。

まずはscala-sample/src/main/scala配下にあるサンプル用のディレクトリを削除してしまいましょう。

次にscala-sample/src/main/scala/に新規scalaファイルを作成して、以下のように記述します。

object HelloWorld {
  def main(args: Array[String]): Unit = {
    println("Hello, World!")
  }
}

保存したら、sbt runを行なって、Hello, World!が出力されることを確認しましょう。

まとめ

これでひとまずScalaの開発が進められるようになりました。次はPlay Frameworkの開発環境を構築していこうかなと思います。

閲覧いただき、ありがとうございました。

よく読まれている記事

エンジニア独立

2019/5/30

レガシーな技術を扱っていたSES正社員がモダンな技術を扱うフリーエンジニアになるまでにやったこと

こんにちは。フリーエンジニアのてぃすです。 僕は独立する前、SESの正社員として非常に歴史の長いプロジェクトに常駐で参加していました。 Javaを使ったシステムなのですが、他のJavaエンジニアに聞いても「なにそれ」と言われてしまうような非常にマニアックなフレームワークを最新から数年遅れのバージョンで扱っていました。 自動テスト?クラウドサーバー?なにそれ?的な非常にレガシーかつ面白みのない状況に嫌気と不安を感じて独立を志したわけです。 で、この時のような僕と同じような状況で悩んでいる人ってのをエンジニア ...

続きを読む

エンジニア独立

2019/5/29

エンジニアの強い味方、フリーランスエージェントとは?

このブログで度々登場する単語であるフリーランスエージェント。 これまで正社員として企業に所属してきたエンジニアにとっては馴染みのない単語だと思います。 なんとなく案件を紹介してくれるサービスだろう。 食べログの飲食店が案件に変わったようなものだろう。 派遣の意識高い系なのだろう。 くらいの印象の方もいらっしゃるかも知れません。 そこで今回はエンジニアにとって、フリーランスエージェントとは何者なのか、利用することによってどんなメリットがあるのかについて説明していこうと思います。 理屈はいいからどのエージェン ...

続きを読む

エンジニア独立

2019/4/29

技術を選んで働くエンジニアになるために

どうも、フリーランスエンジニアのてぃすです。 ITエンジニアと一言で言っても扱っている技術によって働き方は様々です。 また働き方に加えて、将来的なキャリアの展望も使う技術によって大きく変わってきます。 ぼくはエンジニアとして扱う技術を変化させていき、現在は週3でリモート中心でマイペースに働きながらゆとりを持って暮らせるくらいは稼げる程度にまで持っていけました。 そこで今回はITエンジニアが使う技術を選ぶことの大切さと、実際に選ぶためのテクニックについてご紹介していきます。 技術を選ぶ事による効能 まずは使 ...

続きを読む

エンジニア独立

2019/4/28

収入を上げたいWebエンジニアが学習するべき技術

どうも、フリーランスエンジニアのてぃすです。 エンジニアの収入は技術に比例して上がるわけではない。というのはこのブログでよく言っていることです。 しかし技術と収入の因果関係はもちろん0ではありません。 そこで今回はITエンジニアとして働いていく上で収入アップに繋がる可能性の高い技術をピックアップして紹介していきます。 今やっている仕事で収入に限界を感じている 新しい技術を学びたいけど何を学ぶのが効率がいいのか知りたい というエンジニアは要チェックです。 技術によって収入が上がる要因 まず収入が上がる技術と ...

続きを読む

エンジニア独立

2019/5/29

エンジニア歴2年の僕がギークスジョブでフリーランスを目指してみた

ぼちぼちの偏差値の文系大学を卒業後、パッケージ運用系のIT企業に就職。9か月で退職。 その後特定派遣会社の正社員として働いてきた僕がなぜフリーランスを目指す気になったのか。 一番の理由はズバリ、お金が稼ぎたかったから。 正確にはもっと効率よくお金を稼ぎたかったからです。 こんな会社もう嫌だ・・・ 現在僕は正社員として2年以上継続して現場に赴き、プログラミングの業務に従事してきましたが、全く給料が上がらない。 ぶっちゃけると手取りが20万円に届かないレベル。ボーナスもお小遣い程度なので年収も悲惨。 給与明細 ...

続きを読む

-プログラミング
-

Copyright© TIS ENGINEER NOTE , 2020 All Rights Reserved Powered by AFFINGER5.