jupyter notebook에 scala 커널 올려보기

어제는 자바를 쥬피터에 붙여보았는데,
브루스 테이트의 세븐랭귀지를 공부하는 중이고
마침 공부해야하는 챕터가 스칼라라서 스칼라도 붙여보기로 했다.

찾아보니 스칼라는 제플린이나 암모나이트 같은 녀석들도 있었는데,
여러가지 툴을 사용하는 것도 귀찮고, 쥬피터 노트북으로도 공부는 충분히 하고도 남을 것 같아서
쥬피터 노트북에 설치해보기로 했다.

다운로드 및 설치

➜ git clone https://github.com/alexarchambault/jupyter-scala.git
➜ cd jupyter-scala
➜ sbt publishLocal

Getting org.scala-sbt sbt 0.13.15 (this may take some time)…
downloading https://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/sbt/0.13.15/jars/sbt.jar …
[SUCCESSFUL ] org.scala-sbt#sbt;0.13.15!sbt.jar (7448ms)
downloading https://repo1.maven.org/maven2/org/scala-lang/scala-library/2.10.6/scala-library-2.10.6.jar …
[SUCCESSFUL ] org.scala-lang#scala-library;2.10.6!scala-library.jar (30749ms)
downloading https://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/main/0.13.15/jars/main.jar …
[SUCCESSFUL ] org.scala-sbt#main;0.13.15!main.jar (17395ms)

….한…참걸림 and 중략
[info] published scala-cli_2.12.2 to /Users/andy/.ivy2/local/org.jupyter-scala/scala-cli_2.12.2/0.4.3-SNAPSHOT/poms/scala-cli_2.12.2.pom
[info] published scala-cli_2.12.2 to /Users/andy/.ivy2/local/org.jupyter-scala/scala-cli_2.12.2/0.4.3-SNAPSHOT/jars/scala-cli_2.12.2.jar
[info] published scala-cli_2.12.2 to /Users/andy/.ivy2/local/org.jupyter-scala/scala-cli_2.12.2/0.4.3-SNAPSHOT/srcs/scala-cli_2.12.2-sources.jar
[info] published scala-cli_2.12.2 to /Users/andy/.ivy2/local/org.jupyter-scala/scala-cli_2.12.2/0.4.3-SNAPSHOT/docs/scala-cli_2.12.2-javadoc.jar
[info] published ivy to /Users/andy/.ivy2/local/org.jupyter-scala/scala-cli_2.12.2/0.4.3-SNAPSHOT/ivys/ivy.xml
[success] Total time: 160 s, completed Apr 20, 2018 10:36:21 PM

jupyter에서 사용할 scala 설치

➜ ./jupyter-scala –id scala-develop –name “Scala (develop)” –force

이것도 한참 걸림…

잘 되는지 확인

➜ jupyter kernelspec list

➜ jupyter kernelspec list
Available kernels:
scala-develop /Users/andy/Library/Jupyter/kernels/scala-develop
python3 /Users/andy/.pyenv/versions/py3/share/jupyter/kernels/python3

위와 같이 scala가 있으면 성공임

아래는 연습으로 끄적여 본 스크립트입니다~

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다