Scala, sbt, GNU Emacs

Here is a quick tutorial gathering everything you need to work efficiently with Scala:

  • Scala en tant que langage de programmation
  • sbt en tant qu'outil de build
  • GNU Emacs en tant qu'IDE
  • Mercurial pour la gestion de configuration

Pré-requis

Installer la dernière version de Java. Il s'agit de la version 1.6. Sous Ubuntu ou Debian, le plus simple est d'utiliser le paquet :

sudo aptitude install openjdk-6-jdk

Préparer les répertoires d'installation et configurer le PATH :

mkdir ~/tools
mkdir ~/bin
echo 'export PATH=$PATH:~/bin' >> ~/.bashrc

Installation de Scala

Télécharger la dernière version stable de Scala au moment de l'écriture de ce billet, à savoir la scala-2.8.1.

wget http://www.scala-lang.org/downloads/distrib/files/scala-2.8.1.final.tgz -O - | tar xvzf - -C ~/tools
ln -s scala-2.8.1.final ~/tools/scala

Ajouter dans ~/.bashrc :

export PATH=~/bin:$PATH
export JAVA_HOME=/usr/lib/jvm/java-6-openjdk
export SCALA_HOME=~/tools/scala
export PATH=$SCALA_HOME/bin:$PATH

sbt

wget http://simple-build-tool.googlecode.com/files/sbt-launch-0.7.4.jar -O ~/tools/sbt-launch.jar
echo 'java -Xmx1024M -jar ~/tools/sbt-launch.jar "$@"' > ~/bin/sbt
chmod u+x ~/bin/sbt

emacs + scala-mode ou vi

Télécharger le mode scala pour Emacs :

cd tools
svn co http://lampsvn.epfl.ch/svn-repos/scala/scala-tool-support/trunk/src/emacs/ scala-mode

Ajouter dans le ~/.emacs :

(add-to-list 'load-path "~/tools/scala-mode")
(require 'scala-mode-auto)

Ou avec 'vi':

$ mkdir -pv ~/.vim/ftdetect ~/.vim/indent ~/.vim/syntax
$ wget --no-check-certificate https://lampsvn.epfl.ch/trac/scala/export/18260/scala-tool-support/trunk/src/vim/ftdetect/scala.vim -O ~/.vim/ftdetect/scala.vim
$ wget --no-check-certificate https://lampsvn.epfl.ch/trac/scala/export/18260/scala-tool-support/trunk/src/vim/indent/scala.vim -O ~/.vim/indent/scala.vim
$ wget --no-check-certificate https://lampsvn.epfl.ch/trac/scala/export/18260/scala-tool-support/trunk/src/vim/syntax/scala.vim -O ~/.vim/syntax/scala.vim

Mercurial

Installer Mercurial :

sudo aptitude install mercurial

Configurer un minimum le profil dans ~/.hgrc :

[ui]
username = Alexandre Bertails <bertails@gmail.com>

[extensions]
color=

Récupération du projet et sbt (again)

hg clone https://dvcs.spartacusse.org/hg/di-scala
cd di-scala
sbt

Sous sbt, utiliser les commandes suivantes (cf. la doc pour plus d'informations) :

  • update : télécharge les dépendances du projet
  • test : lance les tests
 
scala_sbt_emacs.txt · Last modified: 2011/05/17 04:52 by betehess
 
Except where otherwise noted, content on this wiki is licensed under the following license:CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki