当社Webサイト

カテゴリー

Amazonサーチ

  • 06/15
    Java post by 中村 浩也 @ 2009 年 6 月 15 日 21:00

    初めまして。プロダクト&サービス事業部新人の中村です。

    私はイージーネットに入社して半年程でまだまだ新人なのですが、
    そのせいもありLinux上でWEBアプリケーションを開発する環境を整えるまでに意外と時間がかかりました。
    私の場合OSはCentOS5.2を使用していたのですが、CentOS5.2は特にEclipseを起動し動的WEBプロジェクトを動作させるまでで、注意すべき点が多いような気がします。

    そこで今回は同じように悩んでる方がいるのではないのかと思い、
    CentOS5.2上でEclipseを用いてWEBアプリケーション開発環境を構築するまでの手順についてお伝えしたいと思います。

    使用したimageは”CentOS-5.2-i386-bin-DVD.iso”で、デスクトップはGNOMEを採択しています。
    なお今回の記事ではOS自体のインストール方法は割愛させて頂きます。

    手順

    手順一覧

    手順は大きく以下の流れになります。

    1. Firefoxパッケージをアップデートする
    2. java1.5以上を導入する
    3. Eclipseをインストールする
    4. tomcatをインストールする
    5. 動作を確認する

    1. Firefoxパッケージをアップデートする

    package

    CentOSではpackage updaterというものがあり、アップデートが可能なパッケージについて知らせてくれます。
    あまり知られていない問題かも知れませんが、Firefoxのバージョンが原因でEclipseが正しく起動しない場合があります。
    package updaterからFirefoxのアップデートを行うことで正しく起動するようになることを確認していますので、まずはFirefoxのアップデートを行いましょう。

    以下、詳細解説を行います。
    “CentOS-5.2-i386-bin-DVD.iso”のイメージには”firefox-3.0-0.beta5.6.el5.centos.i386.rpm”が含まれているのですが、
    そのバージョンでEclipseを起動しようとした際以下のようなメッセージが出力されました。
    (使用したEclipseは、eclipse-jee-ganymede-SR2-linux-gtk.tar.gzになります。)

      org.eclipse.swt.SWTError: XPCOM error -2147467262
              at org.eclipse.swt.browser.Mozilla.error(Mozilla.java:1638)
              (以下略)
    

    “XPCOM error”といったキーワードで検索してみると、3.0b5以外のFirefoxのバージョンによっても同じエラーが起きている人がいることがわかります。

    (Eclipse bugレポート記事)
    https://bugs.eclipse.org/bugs/show_bug.cgi?id=103620

    2. java1.5以上を導入する

    Eclipseの動作条件はjavaのバージョンが1.5以上です。
    CentOS5.2ではデフォルトでインストールされているjavaの種類とバージョンはそれぞれgij(GNU libgcj) の1.4.2でした。
    従って、CentOS5.2を使用する際は、1.5以上のjavaをインストールすることを忘れないようにしなければなりません。

    javaのバージョンを確かめる方法は以下になります。

    [root@hiroyapc /]# java -version
    java version "1.4.2"
    gij (GNU libgcj) version 4.1.2 20080704 (Red Hat 4.1.2-44)
    
    Copyright (C) 2006 Free Software Foundation, Inc.
    This is free software; see the source for copying conditions.  There is NO
    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
    

    1.5以上のjavaのインストール方法ですが、yumでインストールする方法と、sunのダウンロードページからダウンロードしてくる方法があります。
    yumでインストールする場合ですが、2009/06/15現在Openjdkがインストールされることになります。

    [root@hiroyapc /]# yum install java-1.6.0 java-1.6.0-devel
    

    OpenJDKは、少し前までは目にすることはなかったのですが、最近多くのディストリビューションで標準で取りいれられているらしく目にすることが多くなってきました。
    何でもSunがリリースしている純正のJDK6が派生したものだそうです。
    それぞれの違いについて詳しく言及している記事が以下にありますので、参考にして下さい。

    http://www.infoq.com/jp/news/2009/01/jdk-openjdk-icedtea

    javaをyumでインストールした際も直接ダウンロードした場合も、”/etc/alternatives/java”が新しいバージョンのjavaを向いていることを確認します。

    [root@hiroyapc /]# update-alternatives --config java
    
    2 プログラムがあり 'java' を提供します。
    
      選択    コマンド
    ------------------------------------------------
     + 1        /usr/lib/jvm/jre-1.4.2-gcj/bin/java
    *  2        /usr/lib/jvm/jre-1.6.0-openjdk/bin/java
    
    Enter を押して現在の選択[+]を保持するか、選択番号を入力します:
    

    上記のように表示されていた場合、1.4.2が選択されています。
    2番を選択し、1.6.0が選択されるようにします。

    バージョンを確認するコマンドを叩き、上記のようになっていれば1.6.0を向いていることがわかります。

    [root@hiroyapc /]# java -version
    java version "1.6.0"
    OpenJDK  Runtime Environment (build 1.6.0-b09)
    OpenJDK Client VM (build 1.6.0-b09, mixed mode)
    

    3. Eclipseをインストールする

    次に、Eclipse本体をダウンロードします。
    Eclipseは統合開発環境ツールの1つであり、webアプリケーション等の開発を行うにあたって大変便利なツールです。
    Eclipseのサイトのダウンロードページからtar.gzファイルをダウンロードして使用します。

    Java向けのEclipseを使用しようとした際、Eclipse IDE for Java EE Developers とEclipse IDE for Java Developersがダウンロード出来ることがわかるかと思いますが、それぞれの違いについてはCompare Packagesに分かりやすい表が記載してあります。

    表を見ての通りなのですが、Java EE DevelopersはJava Developersに加えてWeb ToolsやJEE Tools等のパッケージが同梱されています。
    パッケージ内容については詳しい内容の説明は省略いたしますが、今回はWebアプリケーション開発環境構築を目的としているのでEclipse IDE for Java EE Developers をダウンロードします。

    ちなみに私がダウンロードしたファイルはeclipse-jee-ganymede-SR2-linux-gtk.tar.gzです。
    ダウンロードしたらファイルを任意の場所(/usr/local/bin等)に展開します。

    4. tomcatをインストールする

    tomcatをインストールする方法について、CentOSでは主に2種類があります。

    1つはyumを使用してインストールする方法。

    [root@hiroyapc /]# yum install tomcat5
    

    もう1つはApache Tomcatのサイトよりtar.gzファイルを直接ダウンロードし、インストールする方法です。
    どちらもメリット・デメリットがあるのですが、今回はtar.gzファイルをダウンロードして使用することにします。

    tomcat

    sourceとbinaryどちらをダウンロードすれば良いのかについて簡単に補足します。プログラムはsourceで書かれ、binaryに変換されて最終的に実行されます。
    ここではtomcatを実行することが目的であることから、binaryをダウンロードします。

    次にCoreとDeployerについてですが、DeployerはCoreに加えて、
    作成したweb アプリケーションの検証、コンパイル、WARファイルへの圧縮、Tomcatサーバに配備をするためのパッケージです。
    作成したデータを公開サーバに配備する必要がある場合等はDeployerが必要になりますが、今回はまずは環境を構築するところまでを目的としているのでCoreファイルをダウンロードすることにします。

    ダウンロードしたらファイルを任意の場所(/usr/share/等)に展開します。

    5. 動作を確認する

    正しく起動したならば、Eclipseを立ち上げて動作をすることを確認して下さい。
    Tomcatが起動するところまでを確認したいので、動的webページを作成し、JSPまたはServletを作成します。
    なお、EclipseでのTomcatの設定や詳しい動的webページ作成方法については既に多くのwebページや書籍で詳しく紹介されていることから割愛します。
    Target Runtimeで指定するtomcatのバージョンやtomcatを展開した場所の指定を間違わないこと等に注意して設定して下さい。
    tomcatが正しく動作して、実行結果が返ってきたでしょうか。

    Eclipse起動エラーが起こってしまったら?

    上記の手順を参考にしてもEclipseを起動する際にエラーが起こった際、どうすれば良いのでしょうか。
    Eclipseは起動時にログを吐き出してくれています。出力されるログの場所は、例えばプロジェクトを”/root/workspace”に作成しようとした際以下になります。

      /root/workspace/.metadata/.log
    

    焦らずエラーメッセージの内容を検索サイトで検索してみることで、対処法が見つかるかもしれません。

    最後に

    2009年06月15日現在ではCentOS5.3が既にリリースされており、本記事で取り上げた問題は既に解決されています。
    ですのでCentOS5.3でWEBアプリケーションを開発する環境を整えるまでに手間はあまりかからないかと思います。

    CentOS5.2を今から使用しようとする方は少ないかもしれませんが、この記事の内容が読んで下さった皆さんの参考になれば幸いです。

    それではまた!

    リンク集

    OpenJDK

    ・サン、Javaをオープンソース化–Java SE向けJDKをOpenJDKで公開
    http://japan.cnet.com/news/ent/story/0,2000056022,20348500,00.htm
    ・Sun社のJDK7、OpenJDK、そしてIcedTea:曖昧さの回避
    http://www.infoq.com/jp/news/2009/01/jdk-openjdk-icedtea

    Apache Tomcat

    ・Apache Tomcat 本家サイト
    http://tomcat.apache.org/

    Eclipse

    ・Eclipse.org 本家サイト
    http://www.eclipse.org/
    ・エクリプス
    http://eclipsewiki.net/eclipse/index.php?FrontPage
    ・Eclipse XPCOM errorについて
    https://bugs.eclipse.org/bugs/show_bug.cgi?id=103620

    CentOS

    ・CentOS 本家サイト
    http://www.centos.org/

    Tags: ,