Java環境構築


Java環境構築は、以下のとおりです。

今更、Javaについて私が説明する必要はないと思えますので、環境構築に専念します。

http://72.5.124.55/j2se/1.4.2/ja/download.htmlからjdk-1.5.0_09-linux-i586.binをダウンロードします。
http://tomcat.apache.org/download-60.cgiからapache-tomcat-5.5.25.tar.gzをダウンロードします。
http://tomcat.apache.org/connectors-doc/からtomcat-connectors-1.2.25-src.tar.gzをダウンロードします。
http://jakarta.apache.org/site/downloads/downloads_taglibs-standard.cgiからjakarta-taglibs-standard-1.1.2.tar.gzをダウンロードします。



  1. J2SEのインストール

  2. Tomcatのインストール

  3. JSTLのインストール

  4. tomcatとApacheの連携

  5. サーブレットのコンパイル

  6. Tomcatの自動起動


    J2SEのインストール

  1. J2SEのインストール
    # cd /usr/local
    
    /usr/local#chmod 544 jdk-1.5.0_09-linux-i586.bin
    
    /usr/local/#su - ← スーパバイザーになります。
    
    /usr/local#./jdk-1.5.0_09-linux-i586.bin ← jdk-1.5.0_09-linux-i586.binのインストール
    
     -More が出たらEnterを押します。
     最後にライセンスを聞かれるので「yes」と応えるとインストールを開始します。
    
    /usr/local#cd /usr/local/jdk1.5.0_09 
    
    /usr/local/jdk1.5.0_09#unzip src.zip ← src.zipがあればunzipを行います。
    
    /usr/local/jdk1.5.0_09#cd ../ 
    
    /usr/local#ln -s /usr/local/jdk1.5.0_09 /usr/local/java ← シンボリックリンクを貼ります。
    
    /usr/local#cp /usr/local/jdk1.5.0_09/jre/plugin/i386/ns7/libjavaplugin_oji.so /usr/lib/mozilla/plugins  ← Mozilla1.2、Netscape6以上用にプラグインをコピーします。
    


  2. J2SEの動作確認
    # /usr/local/java/bin/java -version
    
    以下のメッセージが表示されます。バージンが表示されない場合はインストールの失敗です。
    java version "1.5.0_09-ea"
    Java(TM) SE Runtime Environment,Standard Edition (build 1.5.0_09-b01)
    Java HotSpot(TM) Client VM (build 1.5.0_09-b01,mixed mode, sharring)
    


トップへ戻る

Tomcatのインストール

  1. Tomcatの環境変数を設定する。
    #vi /etc/profile 
    root権限とnon-root権限の部分に修正を加えます。
    
    
    # For root users, ensure that /usr/local/sbin, /usr/sbin, and /sbin are in
    # the $PATH.  Some means of connection don't add these by default (sshd comes
    # to mind).
    if [ "`id -u`" = "0" ]; then
      echo $PATH | grep /usr/local/sbin 1> /dev/null 2> /dev/null
      if [ ! $? = 0 ]; then
       export JAVA_HOME=/usr/local/java
       export JRE_HOME=/usr/local/java
       export PATH=/usr/local/sbin:/usr/sbin:/sbin:$PATH:$JAVA_HOME/bin
       export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/jre/lib:/usr/local/tomcat/common/lib/servlet-api.jar:$VAVA_HOME/jre/lib/ext/mysql-connector-java-3.1.14-bin.jar
      fi
    fi
    
    
    # For non-root users, add the current directory to the search path:
    if [ ! "`id -u`" = "0" ]; then
     export CATALINA_HOME=/usr/local/apache-tomcat-5.5.25
     export PATH=$PATH:$CATALINA_HOME/bin
    fi
    
    wqで保存します。
    
    #source /etc/profile ← source コマンドを使って設定した環境変数を有効にします。
    

  2. Tomcatのインストール
    /usr/local/src/#groupadd tomcat
    
    /usr/local/src/#adduser tomcat 
    
    /usr/local/src/#tar zxvf apache-tomcat-5.5.25.tar.gz 
     
    /usr/local/src/#cp -R apache-tomcat-5.5.25 /usr/local
    
    /usr/local/src/#cd /usr/local
    
    /usr/local/#chown -R tomcat. /usr/local/apache-tomcat-5.5.25
    
    /usr/local/#cd /usr/local/apache-tomcat-5.5.25/bin
    
    /usr/local/apache-tomcat-5.5.25/bin#tar zxvf jsvc.tar.gz
    
    /usr/local/apache-tomcat-5.5.25/bin#cd jsvc-src
    
    /usr/local/apache-tomcat-5.5.25/bin/jsvc-src#autoconf
    
    /usr/local/apache-tomcat-5.5.25/bin/jsvc-src#chmod +x configure
    
    /usr/local/apache-tomcat-5.5.25/bin/jsvc-src#./configure --with-java=/usr/local/java
    
    /usr/local/apache-tomcat-5.5.25/bin/jsvc-src#make
    
    /usr/local/apache-tomcat-5.5.25/bin/jsvc-src#cp jsvc ..  ← jsvcを親ディレクトリにコピーします。
    
    /usr/local/apache-tomcat-5.5.25/bin/jsvc-src#cp native/Tomcat5.sh /etc/rc.d/rc.tomcat  ← 起動スクリプトのコピー
    
    /usr/local/apache-tomcat-5.5.25/bin/jsvc-src#cd ../
    
    /usr/local/apache-tomcat-5.5.25/bin/#rm -rf jsvc-src  ← jsvc-srcは不要なので削除します。
    
    /usr/local/apache-tomcat-5.5.25/bin/#ln -s /usr/local/apache-tomcat-5.5.25 /usr/local/tomcat  ← 名前が長すぎるのでシンボリックリンクを貼りました。
    
    /usr/local/apache-tomcat-5.5.25/bin/#chmod 755 /usr/local/tomcat/bin/*.sh
    
    /usr/local/src/# /usr/local/tomcat/bin/startup.sh ← tomcatの起動
    

  3. Tomcatの確認
    TomCATが正常にインストールされている事を以下のURLで確認します。
    http://(コンピュータ名またはIPアドレス):8080/ 
     または
    http://localhost:8080/ 
    

  4. “Hello Tomcat”を表示してみる
    TomCATが正常にインストールされている事を以下のURLで確認します。
    vi /usr/local/apache-tomcat-5.5.25/webapps/examples/test.jsp 
    以下のスクリプトを作成します。
    <html>
    <head><title>Hello Tomcat</title></head>
    <body>
    <h1>Hello Tomcat</h1>
    <p>
    <%
       String hello = "Hello Tomcat";
       out.println(hello);
    %>
    </p>
    </body>
    </html>
    
    chmod 755 /usr/local/apache-tomcat-5.5.25/webapps/examples/test.jsp 
    
    http://localhost:8080/examples/test.jsp
     または
    http://localhost:8080/examples/test.jsp 
     Hello Tomcatが表示されれば問題なし。
    

  5. Context Pathの設定
    上記の“Hello Tomcat”のプログラムは、/usr/local/apache-tomcat-5.5.25/webapps/examples/以下に保存することで、ブラウザから直接URLを入力して表示できましたが、実際には、ほかの場所に保存したjspプログラムを実行したいケースの方が多いでしょう。
    例えば、 http://servername/tomcat/test.jsp というURLへアクセスすることで/home/user_name/tomcat/test.jsp というプログラムを実行するには、Context Pathの設定が必要になります。
    vi /usr/local/apache-tomcat-5.5.25/conf/server.xml 
    
    <Context path="/tomcat"
       docBase="/home/user_name/tomcat"
       crossContext="false"
       debug="0"
       reloadable="true" >
    </Context>  
    
    Tomcatを再起動します。
    

    トップへ戻る

    JSTLのインストール

    1. JSTLのインストール
      #cd /usr/local/src 
      
      /usr/local/src/#tar zxvf jakarta-taglibs-standard-1.1.2.tar.gz 
      
      /usr/local/src/#cp jakarta-taglibs-standard-1.1.2/lib/* /usr/local/tomcat/shared/lib/. 
      

    トップへ戻る

    tomcatとApacheの連携

    1. tomcat-connectors-1.2.25のインストール
      #cd /usr/local/src
      
      /usr/local/src#tar zxvf tomcat-connectors-1.2.25-src.tar.gz
      
      /usr/local/src#cd tomcat-connectors-1.2.25-src/native
      
      /usr/local/src/tomcat-connectors-1.2.25-src/nativ#./configure \ 
      >--with-apxs=/var/lib/apache/bin/apxs --with-java-home=/usr/local/java/
      
      /usr/local/src/tomcat-connectors-1.2.25-src/nativ#make
      
      /usr/local/src/tomcat-connectors-1.2.25-src/nativ#make install
      
      /usr/local/src/tomcat-connectors-1.2.25-src/nativ#cd ../
      
      /usr/local/src/tomcat-connectors-1.2.25-src/#cp conf/workers.properties /usr/local/tomcat/conf
      
      /usr/local/src/tomcat-connectors-1.2.25-src/#cp native/apache-1.3/mod_jk.c /var/lib/apache/libexec ← /var/lib/apache/libexecにmod_jk.cがなかったので!(~_~)
      

    2. workers.propertiesの修正
      #vi /usr/local/tomcat/conf/workers.properties
      
      
      # workers.properties -
      #
      # This file provides jk derived plugins with the needed information to
      # connect to the different tomcat workers.  Note that the distributed
      # version of this file requires modification before it is usable by a
      # plugin.
      #
      # As a general note, the characters $( and ) are used internally to define
      # macros. Do not use them in your own configuration!!!
      #
      # Whenever you see a set of lines such as:
      # x=value
      # y=$(x)\something
      #
      # the final value for y will be value\something
      #
      # Normaly all you will need to do is un-comment and modify the first three
      # properties, i.e. workers.tomcat_home, workers.java_home and ps.
      # Most of the configuration is derived from these.
      #
      # When you are done updating workers.tomcat_home, workers.java_home and ps
      # you should have 3 workers configured:
      #
      # - An ajp12 worker that connects to localhost:8007
      # - An ajp13 worker that connects to localhost:8009
      # - A jni inprocess worker.
      # - A load balancer worker
      #
      # However by default the plugins will only use the ajp12 worker. To have
      # the plugins use other workers you should modify the worker.list property.
      #
      #
      
      # OPTIONS ( very important for jni mode ) 
      
      #
      # workers.tomcat_home should point to the location where you
      # installed tomcat. This is where you have your conf, webapps and lib
      # directories.
      #
      workers.tomcat_home=/usr/local/tomcat
      
      #
      # workers.java_home should point to your Java installation. Normally
      # you should have a bin and lib directories beneath it.
      #
      workers.java_home=/usr/local/java
      
      #
      # You should configure your environment slash... ps=\ on NT and / on UNIX
      # and maybe something different elsewhere.
      #
      ps=/
      
      #
      #------ ADVANCED MODE ------------------------------------------------
      #---------------------------------------------------------------------
      #
      
      #
      #------ DEFAULT worker list ------------------------------------------
      #---------------------------------------------------------------------
      #
      #
      # The workers that your plugins should create and work with
      #
      # Add 'inprocess' if you want JNI connector 
      worker.list=ajp12, ajp13 ← 確認します。
      # , inprocess
      
      
      #
      #------ DEFAULT ajp12 WORKER DEFINITION ------------------------------
      #---------------------------------------------------------------------
      #
      
      #
      # Defining a worker named ajp12 and of type ajp12
      # Note that the name and the type do not have to match.
      #
      worker.ajp12.port=8007
      worker.ajp12.host=localhost
      worker.ajp12.type=ajp12
      #
      # Specifies the load balance factor when used with
      # a load balancing worker.
      # Note:
      #  ----> lbfactor must be > 0
      #  ----> Low lbfactor means less work done by the worker.
      worker.ajp12.lbfactor=1
      
      #
      #------ DEFAULT ajp13 WORKER DEFINITION ------------------------------
      #---------------------------------------------------------------------
      #
      
      #
      # Defining a worker named ajp13 and of type ajp13
      # Note that the name and the type do not have to match.
      #
      worker.ajp13.port=8009       ← 確認します。
      worker.ajp13.host=localhost  ← 確認します。
      worker.ajp13.type=ajp13      ← 確認します。
      #
      # Specifies the load balance factor when used with
      # a load balancing worker.
      # Note:
      #  ----> lbfactor must be > 0
      #  ----> Low lbfactor means less work done by the worker.
      worker.ajp13.lbfactor=1     ← 確認します。
      
      #
      # Specify the size of the open connection pool.
      #worker.ajp13.connection_pool_size
      
      #
      #------ DEFAULT LOAD BALANCER WORKER DEFINITION ----------------------
      #---------------------------------------------------------------------
      #
      
      #
      # The loadbalancer (type lb) workers perform wighted round-robin
      # load balancing with sticky sessions.
      # Note:
      #  ----> If a worker dies, the load balancer will check its state
      #        once in a while. Until then all work is redirected to peer
      #        workers.
      worker.loadbalancer.type=lb
      worker.loadbalancer.balance_workers=ajp12, ajp13
      
      
      #
      #------ DEFAULT JNI WORKER DEFINITION---------------------------------
      #---------------------------------------------------------------------
      #
      
      #
      # Defining a worker named inprocess and of type jni
      # Note that the name and the type do not have to match.
      #
      worker.inprocess.type=jni
      
      #
      #------ CLASSPATH DEFINITION -----------------------------------------
      #---------------------------------------------------------------------
      #
      
      #
      # Additional class path components.
      #
      worker.inprocess.class_path=$(workers.tomcat_home)$(ps)lib$(ps)tomcat.jar
      
      #
      # Setting the command line for tomcat. 
      # Note: The cmd_line string may not contain spaces.
      #
      worker.inprocess.cmd_line=start
      
      # Not needed, but can be customized.
      #worker.inprocess.cmd_line=-config
      #worker.inprocess.cmd_line=$(workers.tomcat_home)$(ps)conf$(ps)server.xml
      #worker.inprocess.cmd_line=-home
      #worker.inprocess.cmd_line=$(workers.tomcat_home)
      
      #
      # The JVM that we are about to use
      #
      # This is for Java2
      #
      # Windows
      worker.inprocess.jvm_lib=$(workers.java_home)$(ps)jre$(ps)bin$(ps)classic$(ps)jvm.dll
      # IBM JDK1.3 
      #worker.inprocess.jvm_lib=$(workers.java_home)$(ps)jre$(ps)bin$(ps)classic$(ps)libjvm.so
      # Unix - Sun VM or blackdown
      #worker.inprocess.jvm_lib=$(workers.java_home)$(ps)jre$(ps)lib$(ps)i386$(ps)classic$(ps)libjvm.so
      
      #
      # And this is for jdk1.1.X
      #
      #worker.inprocess.jvm_lib=$(workers.java_home)$(ps)bin$(ps)javai.dll
      
      
      #
      # Setting the place for the stdout and stderr of tomcat
      #
      worker.inprocess.stdout=$(workers.tomcat_home)$(ps)logs$(ps)inprocess.stdout
      worker.inprocess.stderr=$(workers.tomcat_home)$(ps)logs$(ps)inprocess.stderr
      
      #
      # Setting the tomcat.home Java property
      #
      #worker.inprocess.sysprops=tomcat.home=$(workers.tomcat_home)
      
      #
      # Java system properties
      #
      # worker.inprocess.sysprops=java.compiler=NONE
      # worker.inprocess.sysprops=myprop=mypropvalue
      
      #
      # Additional path components.
      #
      # worker.inprocess.ld_path=d:$(ps)SQLLIB$(ps)bin
      #
      
      

    3. httpd.confの修正
      ★ApacheにTomcatをロードするように指示しなければいけません。
       これは、ApacheのLoadModuleとAddModule設定指示子を用いて設定できます。
      ★mod_jkに、workers.propertiesの位置を教える必要があります。
       これには、mod_jkのJkWorkersFile設定指示子を使用します。
      ★mod_jkのログファイルの位置と、ログレベルを指定しなければいけません。
       これには、JkLogFileとJkLogLevel設定指示子を使用すればよい。
       可能なログレベルは、debug,warn,error,emergが選択できるが、warnがDefaultとして選択されます。
       好みの問題?!
      そこで、以下の様に設定しました。
      #vi /var/lib/apache/conf/httpd.conf
      
      LoadModule jk_module libexec/mod_jk.so ←205行目付近に追加します。
      AddModule mod_jk.c
      JkWorkersFile /usr/local/tomcat/conf/workers.properties
      JkLogFile     /var/log/apache/mod_jk.log
      JkLogLevel    warn
      JkMount /*.jsp ajp13 ←jspはTomcaで処理
      JkMount /app/* ajp13 ←/app/配下はTomcatで処理
      

    トップへ戻る

    サーブレットのコンパイル

    1. サーブレットのコンパイル
      #javac HelloWorld.java 
      

    トップへ戻る

    Tomcatの自動起動

  6. Tomcat/jsvcの自動起動の設定
    赤字部分を修正・修正しました。
    vi /etc/rc.d/rc.tomcat
    
    #!/bin/sh
    ##############################################################################
    #
    #   Copyright 2004 The Apache Software Foundation.
    #
    #   Licensed under the Apache License, Version 2.0 (the "License");
    #   you may not use this file except in compliance with the License.
    #   You may obtain a copy of the License at
    #
    #       http://www.apache.org/licenses/LICENSE-2.0
    #
    #   Unless required by applicable law or agreed to in writing, software
    #   distributed under the License is distributed on an "AS IS" BASIS,
    #   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    #   See the License for the specific language governing permissions and
    #   limitations under the License.
    ##############################################################################
    #
    # Small shell script to show how to start/stop Tomcat using jsvc
    # If you want to have Tomcat running on port 80 please modify the server.xml
    # file:
    #
    #    
    #    
    #
    # That is for Tomcat-5.0.x (Apache Tomcat/5.0)
    #
    # Adapt the following lines to your configuration
    JAVA_HOME=/usr/local/java
    CATALINA_HOME=/usr/local/tomcat
    DAEMON_HOME=/usr/local/tomcat
    TOMCAT_USER=tomcat
    
    # for multi instances adapt those lines.
    TMP_DIR=/var/tmp
    PID_FILE=/var/run/jsvc.pid
    CATALINA_BASE=/usr/local/tomcat
    
    CATALINA_OPTS="-Djava.library.path=/usr/local/src/tomcat-connectors-1.2.25-src/native/.libs"
    CLASSPATH=\
    $JAVA_HOME/lib/tools.jar:\
    $CATALINA_HOME/bin/commons-daemon.jar:\
    $CATALINA_HOME/bin/bootstrap.jar
    
    case "$1" in
      start)
        #
        # Start Tomcat
        #
        $DAEMON_HOME/bin/jsvc-src/jsvc \
        -user $TOMCAT_USER \
        -home $JAVA_HOME \
        -Dcatalina.home=$CATALINA_HOME \
        -Dcatalina.base=$CATALINA_BASE \
        -Djava.io.tmpdir=$TMP_DIR \
        -wait 10 \
        -pidfile $PID_FILE \
        -outfile $CATALINA_HOME/logs/catalina.out \
        -errfile '&1' \
        $CATALINA_OPTS \
        -cp $CLASSPATH \
        org.apache.catalina.startup.Bootstrap
        #
        # To get a verbose JVM
        #-verbose \
        # To get a debug of jsvc.
        #-debug \
        exit $?
        ;;
    
      stop)
        #
        # Stop Tomcat
        #
        $DAEMON_HOME/bin/jsvc-src/jsvc \
        -stop \
        -pidfile $PID_FILE \
        org.apache.catalina.startup.Bootstrap
        exit $?
        ;;
    
      *)
        echo "Usage tomcat.sh start/stop"
        exit 1;;
    esac
    
    
    chmod 755 /etc/rc.d/rc.tomcat
    
    chown root:root /etc/rc.d/rc.tomcat
    
    chmod 755 /usr/local/tomcat/bin/srvstart.sh
    
    chmod 755 /usr/local/tomcat/bin/srvstop.sh
    

  7. Tomcatの自動起動
    #vi /etc/rc.d/rc.local 
    以下の行をmysqlの起動前に追加します。
    if [ -x /usr/local/tomcat/bin/startup.sh ];then
    echo "Statting Tomcat: /usr/local/tomcat/bin/startup.sh"
     cd /usr/local/tomcat/bin/
      ./startup.sh 
    fi
    



前ページへ戻る

ご感想・ご意見 - 免責事項



Copyright (C) 1998 hero-island. All Rights Reserved.