総合情報科教育用計算機室(IED)でのJava8とIntelliJ IDEAの導入について

これは UEC Advent Calendar 2015 2日目の記事です。

記事を書いている途中にMBAのReturnキーに何かものが挟まってったことに気がつき、Returnキーがほぼ押せなくなっているbenevolent0505です。

時間がないのでネタが雑です。ごめんなさい… 総合情報科教育用計算機室(IED)でのJava8とIntelliJを入れる話について書きます。

はじめに

電気通信大学の総合情報学科(以下J科)では2年後期に「プログラミング演習」という授業があります。 前半はJavaを使ってオブジェクト指向GUIプログラミングを行い、後半で3人1組になってチームで一つGUIのプログラムを作成するといった授業です。

前期まではC言語しか触ったことがない学生がほとんどの中2ヶ月でJavaとSwingを網羅(?)して、後半でグループプログラミングに放り込む、正直よくやるなと思う授業ですが、後半は自由にやれるので楽しいです。

しかし不満に思う点もあり、例えば

  • エディタは素のEmacsで書かせる
  • EclipseなどのIDEの説明をほとんどしない*1
  • Java8が使えない(Java7まで)

など色々あります。

そのため不満を解消するべく、授業で使っている計算機室(通称IED)の計算機に、最新のJava8と僕が勧めている統合開発環境IntelliJ IDEAの導入方法について書いておきます。

以下に今回導入したJava8とIntelliJ IDEAについて簡単に書いておきます。

Java8について

Javaの最新のバージョン。関数型プログラミングができるようになってていい感じ。自分もまだまだ勉強中なので詳しこと書けない。

IntelliJ IDEAについて

Java統合開発環境(IDE)の一つ。IDEなので基本的に便利(自動import, overrideメソッドを自動でoverride、getter, setterなどを自動生成...etcとかができる機能がある) イケてる。

導入

それではJDK1.8とIntelliJ IDEAをIEDで使えるようにする方法を書きます。*2 WindowsやらOS Xやらはググればわかると思うので省略。

JDKのインストール

JDKのダウンロード

OracleのダウンロードページからJDKを選んで次のページを開く。

f:id:miki_bene:20151202170347p:plain:w300

Linux x64(ピンクの下線を引いたもの)をダウンロードする。

tarの展開

.tar.gzファイルは圧縮形式の一つ(zipとかと一緒)です。なのでファイルを展開して任意のディレクトリに設置する必要があります。展開はGUIでやってもCUIでやってもどちらでもいいです。ここではCUIで展開してホームディレクトリ直下の~/javaのディレクトリに設置する方法を記述しておきます。

$ cd ~/ダウンロード
$ tar zxvf jdk-8u60-linux-x64.tar.gz
$ ls 
> jdk-8u60-linux-x64.tar.gz  jdk1.8.0_60
$ mkdir ~/java
$ mv jdk1.8.0_60 ~/java
$ ls ~/java
> jdk1.8.0_60

JAVA_HOMEの設定とパスを通す

これでjdkの設置が終わったのでパスを通します。 (パスについてわからなければこことかで調べてくれ) IEDのデフォルトシェルはtcshなので .cshrcというファイルをホームディレクトリに作成し、以下の内容書いて保存します。

setenv JAVA_HOME ~/java/jdk1.8.0_60
set path=($JAVA_HOME/bin $path)

最後に

$ source ~/.cshrc

を実行してjdkの導入は完了です。以下のコマンドを打ってjava version "1.8.0_60"と表示が出れば成功です。

$ java -version
> java version "1.8.0_60"
> Java(TM) SE Runtime Environment (build 1.8.0_60-b27)
> Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)

IntelliJ IDEAのインストール

次にIntelIiJ IDEAのインストールです。

ダウンロードと展開・配置

IntelliJ IDEAのダウンロードページ を開いて Download Communityのリンクを開きます。

IntelliJもtar.gzで降ってくるので解凍して任意のディレクトリに設置してください。ここでは~/appsディレクトリに設置します。

$ cd ~/ダウンロード
$ tar zxvf ideaIC-15.0.1.tar.gz
$ ls
> idea-IC-143.382.35  ideaIC-15.0.1.tar.gz  jdk-8u60-linux-x64.tar.gz
$ mkdir ~/apps
$ mv idea-IC-143.382.35 ~/apps
ls ~/apps
> idea-IC-143.382.35

IntelliJ IDEAの実行

では実際にIntelliJを実行してみます。 以下のコマンドを実行するとIntelliJが起動します。

$ cd ~/apps/idea-IC-143.382.35/bin
$ ./idea.sh

f:id:miki_bene:20151202222423p:plain:w500

初回実行時にカラーテーマとかデスクトップエントリーを作るなどの設定が出来ますが、基本的にはNextと表示されるボタンを押し続ければ大丈夫です。 この辺りは公式のドキュメントに任せようと思います。

www.jetbrains.com

www.jetbrains.com

最終的にこのウィンドウが表示されれば完了です。

f:id:miki_bene:20151202222709p:plain:w500

設定関連

必須の設定

IntelliJは利用するJDKの指定が必要です。その方法について記述します。

最初に表示されるウィンドウの右下にあるConfigureをクリックし、Project Defaultsをクリック→Project Structureをクリックすると次のウィンドウが出ます。

f:id:miki_bene:20151202224148p:plain:w500

<No SDK>と表示されている隣りにある、Editのボタンをクリックし、JDKを選択します。

f:id:miki_bene:20151202224254p:plain

すると上の画像にあるようなウィンドウが表示されるので、先ほど設置したJDKの場所を選択してOKを押します。

f:id:miki_bene:20151202224440p:plain:w500

すると<No SDK>だった部分が上の画像のように表示されますので、これで設定完了です。

オススメ設定

以下には、やっておいた方が良いIntelliJ IDEAの設定を紹介します。

Configureをクリックし、Preferencesをクリックすると設定を変更するウィンドウが表示される。

  • Appearance & Behavior > System Settings を選択

    • Startup/Shotdown
      • Reopen last project on startup のチェックを外す
      • Confirm application exit のチェックを外す
    • Project Opening
      • Open project in new windows にチェックを入れる
  • Editor > General > Appearance を選択

    • Show line numbers にチェックを入れる
    • Show method separators にチェックを入れる
    • Show whitespaces にチェックを入れる

これらを全て行って、OKをクリックする。

Hello World

これに関しても公式のHello Worldのページが一番参考になると思うので、そちらに任せます。*3

IntelliJ IDEA 15.0 Help :: Creating and Running Your First Java Application

終わりに

ここまでお疲れ様でした。

これでかなり良いJavaを書く環境が出来上がりました。 IntelliJについてはこの記事ではほとんど触れていませんが、色々調べれば日本語の記事は出てくるはずです。

皆さんも快適なIEDの環境を目指しましょう!



おまけ

正直Javaをやり始めた人にJava8だIntelliJだと色々言う必要は無いのかもしれません。 でも、授業で教わる内容だけが全てではなく、もっと色々なやり方があり、便利な方法があるんだということ。授業で習っている内容は今では一昔前のことで、最先端の状況はもっと違ったものなんだということは知って欲しいです。

*1:一応Eclipseについての説明のページは用意されているが、ほとんどの学生は見てないと思う

*2:2015年12月2日現在のバージョンです。注意してください

*3:書ききる体力がなくなっただけです…