JBoss AS 7 + Eclipse3.7 + JBossTools3.3

JBoss AS 7.1.1がでているようなので、インストール方法をまとめてみました。

Redhatの業績は好調なのに、JBoss AS 7 はあまり流行っているように見えないのが不思議です。とりあえず、簡単にインストール方法を紹介。

JDK6
何はともあれJDK6が必要です。OpenJDK, Oracle Java SDK, Oracle JRockitのどれでも良いそうです。好きなものをインストールしましょう。

Apache Maven 3.0.x
Mavenも必要だということです。ダウンロードして用意しましょう。

JBoss AS 7
JBoss AS 7 は下記からダウンロードできます。

インストール
ここでは、Oracle JDK6, Apache Maven 3.0.4, JBoss AS 7.1.1のインストールをしてみます。下記ディレクトリ構成で動かします。まずはディレクトリを用意しましょう。

$HOME
|-- applications
|   |-- apache-maven-3.0.4
|   |-- jboss-as-7.1.1.Final
|   `-- jdk1.6.0_31
|-- bin
`-- download
$ mkdir $HOME/download $HOME/applications $HOME/bin

あらかじめ、jdk-6u31-linux-x64.bin, apache-maven-3.0.4-bin.tar.gz, jboss-as-7.1.1.Final.zip を$HOME/downloadへダウンロードしてあるとします。下記のように展開して、$HOME/applications に配備します。

$ cd $HOME/download
$ tar xzf ~/download/apache-maven-3.0.4-bin.tar.gz -C ~/applications/
$ unzip jboss-as-7.1.1.Final.zip -d ~/applications/
$ sh ~/download/java/jdk-6u31-linux-x64.bin 
$ mv jdk1.6.0_31 ~/applications/

起動スクリプトを作成します。$HOME/bin/jboss7.sh という名前で用意しましょう。

#!/bin/sh
JBOSS_HOME="$HOME/applications/jboss-as-7.1.1.Final"
JDK_HOME="$HOME/applications/jdk1.6.0_31"
MAVEN_HOME="$HOME/applications/apache-maven-3.0.4"
export JAVA_HOME=$JDK_HOME
export PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:JBOSS_HOME/bin:$PATH
$JBOSS_HOME/bin/standalone.sh

作成した起動スクリプトは実行可能としてから、起動します。

$ chmod 755 ~/bin/jboss7.sh 
$ ~/bin/jboss7.sh 

問題なく起動したら、http://localhost:8080/ へWebブラウザでアクセスすると、Welcome to JBoss Application Server 7 ページが表示されます。Ctrl-C で停止させることができます。簡単ですね。(c.f. JBoss AS 7 Getting Started Guide – 1 « Gold Experience

実際の開発では、Eclipseなどを使うことが多いでしょう。ここでは、Eclipse Indigo, JBoss Tools 3.3 で JBoss AS を使う方法について説明をします。
あらかじめ、$HOME/download へ、eclipse-jee-indigo-SR2-linux-gtk-x86_64.tar.gz をダウンロードしてあるとします。

$ tar xzf ~/download/eclipse-jee-indigo-SR2-linux-gtk-x86_64.tar.gz
$ mv eclipse ~/applications/eclipse-jee-indigo-SR2-jbosstools

次のような起動スクリプトを用意します。~/bin/eclipse-jee-indigo-SR2-jbosstools.sh という名前で作成します。JDK6, Mavenは今回インストールしたものを指定しています。

#!/bin/sh
cur=`pwd`
ECLIPSE_HOME="$HOME/applications/eclipse-jee-indigo-SR2-jbosstools"
MAVEN_HOME="$HOME/applications/apache-maven-3.0.4"
cd $ECLIPSE_HOME
export JAVA_HOME="$HOME/applications/jdk1.6.0_31"
export PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$PATH
$ECLIPSE_HOME/eclipse -vm $JAVA_HOME/bin/java
cd $cur

使用するworkspaceをあらかじめ作っておいてから、起動スクリプトにchmodで実行権限を与えて、起動します。Eclipseの起動画面が表示されて、workspaceの指定を促されるので、ここで作成したeclipse-jee-indigo-SR2-jbosstoolsを指定します。

$ mkdir -p $HOME/workspace/eclipse-jee-indigo-SR2-jbosstools
$ chmod 755 ~/bin/eclipse-jee-indigo-SR2-jbosstools.sh 
$ ~/bin/eclipse-jee-indigo-SR2-jbosstools.sh

次に、JBoss Tools をインストールします。JBoss Tools については、「JBoss Tools | Downloads – JBoss Community」が参考になります。Eclipseの[Help]-[Install New Software] で Install ダイアログを開いて、[Add…]ボタンをクリックして表示される画面で、次のように入力します。

Name: JBoss Tools
Location: http://download.jboss.org/jbosstools/updates/development/indigo/

Available Software ウィンドウにおいて [Select All] ですべて選びます。([Abridged JBoss Tools 3.3] [JBoss Application Development] [JBoss Maven Support] [JBoss Web and Java EE Development] だけでも良いかもしれませんが、絞り込むのも面倒なので全部入れます)

準備ができたら、[Next]をクリックします。次に表示される Install Details ウィンドウでも [Next] を選択します。Review Licenses ウィンドウでは、 [I accept …] を選択状態にしてから、 [Finish] を選択します。途中、Security Warning ウィンドウがでます。内容に問題がないことを確認してから、[OK] をクリック。

インストールが済むと、Software Updates ウィンドウが表示されるので、 [Restart Now] を選択し Eclipse の再起動します。起動すると、JBoss Tools Usage ウィンドウがでます。匿名で使用情報を送るということなのでコミュニティに貢献する場合は[Yes]、情報を送るのが嫌な場合は[No]をクリックします。

ちなみに、JBoss Tools | Downloads – JBoss Community からファイルをダウンロードしてインストールする方法もあります。

  1. jbosstools-3.3.0.Beta2.aggregate-Update-2012-03-28_11-25-57-H136.zipをダウンロード
  2. unzipしないで、Add Repository でLocationへ $HOME/applications/jbosstools-3.3.0.Beta2.aggregate-Update-2012-03-28_11-25-57-H136.zip!/ のように指定。$HOMEは実際の値(/home/user1 など)に直して指定する必要があるかもしれません。
  3. 後は同じ。

Eclipse のインストールと起動が正しくできたら、 サーバーとして、JBoss AS を Eclipse に追加します。[File] -> [New] -> [Other] を選択して表示されるウィザード画面で、 Wizards: に server と入力。Server を選んで [Next]をクリックします。

次に、ServerにJBoss 7.1を選んで、Server’s host name : localhost , Server name : JBoss 7.1 Runtime Server となっていることを確認して [Next]をクリックします。

表示される画面で、下記を指定して[Finish]をクリックします。$HOMEは実際の値(/home/user1 など)に直して指定する必要があります。

  • ホーム・ディレクトリー $HOME/applications/jboss-as-7.1.1.Final
  • JRE jdk1.6.0_31

作業が完了すると、下部ペインに Servers タブがあり、JBoss 7.1 Runtime Server が追加されているはずです。マウスの右ボタンメニューで、Startしたり、Stopしたりできます。

JBoss AS を使うと Eclipseに大量のメモリが必要になるので、~/applications/eclipse-jee-indigo-SR2-jbosstools/eclipse.ini で割り当てるメモリは増やしておきます。変更する値は次のようになります。このあたりは用意してあるマシンに応じて調整が必要です。

-XX:MaxPermSize=512m
-Xms2048m
-Xmx2048m

JBoss Tools をインストールしたEclipseを起動すると、JBoss Central タブが表示されるので、Project Examples の JBoss Quickstarts を開きます。Helloworldをクリックすると、画面がでるので、[Finish]、Cheat Sheetsを表示するか問い合わせる画面がでるので、[Finish]をクリックします。左ペインにCheat Sheets が表示されるので、これを見ながら確認すると良いでしょう。

とりあえず動かしたい人は、jboss-as-helloworld プロジェクトをマウスの右ボタンでクリックして「Run As > Run On Server」としてから、ConsoleでJBoss ASが起動するのを確認します。起動したら、 http://localhost:8080/jboss-as-helloworld/HelloWorld へアクセスすると動いていることがわかるはずです。

loginのサンプルもあります。jboss-as-helloworld と同様にしてインストールして起動してみましょう。こちらは、JBoss AS 7 に同梱される H2 によるExampleDSを使っています。

$ cat ~/applications/jboss-as-7.1.1.Final/standalone/configuration/standalone.xml |grep ExampleDS
                <datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true">

デモを使うには、ユーザ名に demo 、パスワードに demo と入力します。変更したい場合はプロジェクトに含まれる import.sql を修正します。

ざっとした説明ですが、これで Eclipse で JBoss AS が使えます。JBoss Central から Java EE Web project や Dynamic Web project などが作れるようになっているので、サンプルを見て様子がわかったら、これらを使って雛形のプロジェクトを作成して拡張していけば、楽に開発ができるはずです。簡単ですね!

c.f. JBoss Tools 3.3 | Installation | From Update Site – JBoss Community