12
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Scalaの環境構築

Last updated at Posted at 2020-05-30

お仕事で少しScalaを触ることがあって、その環境構築についてまとめておきたいと思います。

基本的にMacに向けて解説していきますが、適宜環境に合わせて実行できるようにリンクを示していきますので、自身の環境に合わせて進めていってください。

本記事ではパッケージマネージャなどに頼らずに環境構築を行なっていきます。

Scalaとは

Scalaはコンパイル方式の言語で、Scalaのコードを書いてコンパイルすることでJava VMの上で実行可能なclassファイルを出力します。
Scalaのためのビルドツールとしてsbtというものがあります。
sbtを使うことで、プロジェクトによって任意のバージョンのScalaを使い分けることも可能になるので、sbtを使ってScalaの環境構築を行います。

Scalaの環境構築

まずは、Scalaを実行できる環境の構築を行います。

Scalaはsbtというビルドツールを使って実行やビルドなどを行うことができます。
sbtを使ってプロジェクトごとに指定のバージョンのScalaをインストールしたりすることが可能なので、まずはsbtをインストールしましょう。

sbt のインストールを参考に進めていきます。

手順としては

  1. JDK(Javaの開発環境)をインストールする
  2. sbtをインストールする

の二つだけです。
順番に進めていきましょう。

JDKのインストール

まずは、JDKをインストールしていきましょう。

お好みのJDKをインストールしてください。
代表的なものはOracleのJDKとOpenJDKと呼ばれるオープンソースのJDKです。

Javaはオープンソースのプログラミング言語で、Oracle社が商品としてビルドして配布・サポートしているJDKとOSSのコミュニティなどがビルドして配布している様々な種類のJDKがあります。

今回は、sbtの公式で推奨されているOpenJDKのパッケージでのインストール方法で進めていきましょう。
こちらのリンクからOpenJDK 11 (LTS)HotSpotを選択してダウンロードしましょう。

ダウンロードできたらダウンロードしたパッケージを実行してインストールしましょう。
インストールできたら、javaが実行できるか確認してみましょう。

java -version

インストールしたバージョンが表示されていれば大丈夫です。
今回の場合、以下のように表示されていると思います。

openjdk [version]
OpenJDK Runtime Environment AdoptOpenJDK (build 1[version])
OpenJDK 64-Bit Server VM AdoptOpenJDK (build [version], mixed mode, sharing)

上のように表示されない場合は、既に他のJavaがインストールされている場合です。

JAVA_HOMEというシェル変数を書き換えることで、実行するJavaを切り替えることができます。
シェルの設定ファイル.bash_profile.zshrcに以下のように追記し、JAVA_HOMEを設定して、確認してみてください。

export JAVA_HOME="/Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home"

追記できたら、シェルを再起動して、結果を確認します。

exec $SHELL -l

java --version

JAVA_HOMEを書き換えることで、今まで使えていたJavaを利用しているアプリケーションが使えなくなる可能性もありますので、注意してください。
そのような場合は、適宜切り替えるようにするかしたで解説するコマンド実行時のみ設定する方法で対応してください。

sbtのインストール

次にsbtをインストールしていきましょう。

こちら

ユニバーサルパッケージからのインストール

からZIPを入手してください。
ダウンロードできたらZIPファイルを展開して配置していきましょう。

unzip sbt-1.3.4.zip -d ~/[好きな場所]

最後に、sbtコマンドが実行できるようにpathを通します。
.bash_profile.zshrcに追記してください。

export PATH="$HOME/[好きな場所]/sbt/bin:$PATH"

これで、sbtがインストールできたはずです。

シェルを再起動して確認してみましょう。

sbtは実行時にtargetというディレクトリを生成してプロジェクトの成果物やキャッシュを保存するので、実行後に削除できるようにして試してみましょう。

この時に、JDKは先ほどインストールしたOpenJDKのものを使いたいので、JAVA_HOMEが正しく設定されているかも確認しておきましょう。

exec $SHELL -l

echo $JAVA_HOME
mkdir test && cd test
sbt --version
cd ../ && rm -rf test

また、コマンドの実行時のみJAVA_HOMEを指定したい場合は、以下のようにコマンドを実行することでJAVA_HOMEを指定できます。

JAVA_HOME="/Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home" sbt

もしくは、新しいバージョンのsbtの場合以下のように指定することも可能です。

sbt -java-home /Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home

sbtで仕様しているJavaのバージョンを知るには、sbtのシェルモードの中でconsoleコマンドを実行します。
すると、scalaのインタプリタが実行され、仕様しているJavaのバージョンなどが表示されます。

sbtシェルモードの中で以下のコマンドを実行することで、JAVA_HOMEの場所を確認することもできます。

eval System.getProperty("java.home")

まとめ

最後まで読んでいただきありがとうございます。
以上で環境構築は完了です。
Scalaの実行環境はこれで整ったので、これでいろいろ試すことができます。
続けて、sbtでのプロジェクトの作り方について書いていきたいと思いますので、よければそちらも読んでみてください。

参考

12
8
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?