• Ubuntu16.04 安装JDK Tomcat


    Ubuntu16.04安装jdk,下载linux中的64版本

    需要下载jdk,tomcat安装包 tar.gz版本的

    http://pan.baidu.com/s/1mi4WVhA

    安装JDK:

    hongdada@ubuntu:~$ sudo mkdir /java
    [sudo] hongdada 的密码: 
    hongdada@ubuntu:~$ cd /Downloads
    bash: cd: /Downloads: 没有那个文件或目录
    hongdada@ubuntu:~$ cd Downloads/
    hongdada@ubuntu:~/Downloads$ sudo mv jdk-8u121-linux-x64.tar.gz /java
    hongdada@ubuntu:~/Downloads$ sudo tar -zxvf jdk-8u121-linux-x64.tar.gz
    tar (child): jdk-8u121-linux-x64.tar.gz:无法 open: 没有那个文件或目录
    tar (child): Error is not recoverable: exiting now
    tar: Child returned status 2
    tar: Error is not recoverable: exiting now
    hongdada@ubuntu:~/Downloads$ cd java/
    bash: cd: java/: 没有那个文件或目录
    hongdada@ubuntu:~/Downloads$ cd ~
    hongdada@ubuntu:~$ cd java/
    bash: cd: java/: 没有那个文件或目录
    hongdada@ubuntu:~$ cd /java
    hongdada@ubuntu:/java$ sudo tar -zxvf jdk-8u121-linux-x64.tar.gz
    jdk1.8.0_121/
    jdk1.8.0_121/THIRDPARTYLICENSEREADME-JAVAFX.txt
    jdk1.8.0_121/THIRDPARTYLICENSEREADME.txt
    ...............
    jdk1.8.0_121/man/ja_JP.UTF-8/man1/jstat.1
    hongdada@ubuntu:/java$ sudo gedit /etc/environment
    
    //修改/etc/environment中的内容
    
    hongdada@ubuntu:~$ sudo gedit /etc/environment
    [sudo] hongdada 的密码: 
    
    (gedit:3856): IBUS-WARNING **: The owner of /home/hongdada/.config/ibus/bus is not root!
    
    (gedit:3856): Gtk-WARNING **: Calling Inhibit failed: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.SessionManager was not provided by any .service files
    
    ** (gedit:3856): WARNING **: Set document metadata failed: 不支持设置属性 metadata::gedit-spell-enabled
    
    ** (gedit:3856): WARNING **: Set document metadata failed: 不支持设置属性 metadata::gedit-encoding
    
    ** (gedit:3856): WARNING **: Set document metadata failed: 不支持设置属性 metadata::gedit-spell-enabled
    
    ** (gedit:3856): WARNING **: Set document metadata failed: 不支持设置属性 metadata::gedit-encoding
    
    ** (gedit:3856): WARNING **: Set document metadata failed: 不支持设置属性 metadata::gedit-spell-enabled
    
    ** (gedit:3856): WARNING **: Set document metadata failed: 不支持设置属性 metadata::gedit-encoding
    
    ** (gedit:3856): WARNING **: Set document metadata failed: 不支持设置属性 metadata::gedit-position
    hongdada@ubuntu:~$ source /etc/environment
    hongdada@ubuntu:~$ java -version
    java version "1.8.0_121"
    Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
    Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)

    /etc/environment中文件修改为

    PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:$JAVA_HOME/bin"
    export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
    export JAVA_HOME=/java/jdk1.8.0_121

    修改environment是修改系统的环境变量,还要修改登陆用户的环境变量,即修改/etc/profile的文件

    hongdada@ubuntu:~$ sudo gedit /etc/profile

    /etc/profile修改为:

     # /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
    # and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).
    
    if [ "$PS1" ]; then
      if [ "$BASH" ] && [ "$BASH" != "/bin/sh" ]; then
        # The file bash.bashrc already sets the default PS1.
        # PS1='h:w$ '
        if [ -f /etc/bash.bashrc ]; then
          . /etc/bash.bashrc
        fi
      else
        if [ "`id -u`" -eq 0 ]; then
          PS1='# '
        else
          PS1='$ '
        fi
      fi
    fi
    
    if [ -d /etc/profile.d ]; then
      for i in /etc/profile.d/*.sh; do
        if [ -r $i ]; then
          . $i
        fi
      done
      unset i
    fi
    
    #set java environment
    export JAVA_HOME=/java/jdk1.8.0_121
    export JRE_HOME=$JAVA_HOME/jre
    export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
    export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

    使用命令使环境变量立即生效

    source /etc/profile

    重启电脑,能正常进入系统,且java -version命令有效

    安装Tomcat9:

    在java文件夹下面创建文件夹tomcat,迁移Downloads中的apache-tomcat-9.0.0.M17.tar.gz文件到tomcat文件夹中,解压

    修改/java/tomcat/apache-tomcat-9.0.0.M17/bin/startup.sh文件

    在文件底部添加

    #set java environment
    export JAVA_HOME=/java/jdk1.8.0_121
    export JRE_HOME=$JAVA_HOME/jre
    export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
    export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
    
    #tomcat
    export TOMCAT_HOME=/java/tomcat/apache-tomcat-9.0.0.M17

    添加之后的startup.sh文件

    #!/bin/sh
    
    # Licensed to the Apache Software Foundation (ASF) under one or more
    # contributor license agreements.  See the NOTICE file distributed with
    # this work for additional information regarding copyright ownership.
    # The ASF licenses this file to You 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.
    
    # -----------------------------------------------------------------------------
    # Start Script for the CATALINA Server
    # -----------------------------------------------------------------------------
    
    # Better OS/400 detection: see Bugzilla 31132
    os400=false
    case "`uname`" in
    OS400*) os400=true;;
    esac
    
    # resolve links - $0 may be a softlink
    PRG="$0"
    
    while [ -h "$PRG" ] ; do
      ls=`ls -ld "$PRG"`
      link=`expr "$ls" : '.*-> (.*)$'`
      if expr "$link" : '/.*' > /dev/null; then
        PRG="$link"
      else
        PRG=`dirname "$PRG"`/"$link"
      fi
    done
    
    PRGDIR=`dirname "$PRG"`
    EXECUTABLE=catalina.sh
    
    # Check that target executable exists
    if $os400; then
      # -x will Only work on the os400 if the files are:
      # 1. owned by the user
      # 2. owned by the PRIMARY group of the user
      # this will not work if the user belongs in secondary groups
      eval
    else
      if [ ! -x "$PRGDIR"/"$EXECUTABLE" ]; then
        echo "Cannot find $PRGDIR/$EXECUTABLE"
        echo "The file is absent or does not have execute permission"
        echo "This file is needed to run this program"
        exit 1
      fi
    fi
    
    exec "$PRGDIR"/"$EXECUTABLE" start "$@"
    
    #set java environment
    export JAVA_HOME=/java/jdk1.8.0_121
    export JRE_HOME=$JAVA_HOME/jre
    export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
    export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
    
    #tomcat
    export TOMCAT_HOME=/java/tomcat/apache-tomcat-9.0.0.M17
    View Code

    启动Tomcat

    hongdada@ubuntu:~$ cd /java
    hongdada@ubuntu:/java$ cd tomcat
    hongdada@ubuntu:/java/tomcat$ cd apache-tomcat-9.0.0.M17
    hongdada@ubuntu:/java/tomcat/apache-tomcat-9.0.0.M17$ cd bin
    bash: cd: bin: 权限不够
    hongdada@ubuntu:/java/tomcat/apache-tomcat-9.0.0.M17$ sudo cd bin
    sudo: cd:找不到命令
    hongdada@ubuntu:/java/tomcat/apache-tomcat-9.0.0.M17$ sudo bin
    sudo: bin:找不到命令
    hongdada@ubuntu:/java/tomcat/apache-tomcat-9.0.0.M17$ sudo ./bin/startup.sh
    Using CATALINA_BASE:   /java/tomcat/apache-tomcat-9.0.0.M17
    Using CATALINA_HOME:   /java/tomcat/apache-tomcat-9.0.0.M17
    Using CATALINA_TMPDIR: /java/tomcat/apache-tomcat-9.0.0.M17/temp
    Using JRE_HOME:        /java/jdk1.8.0_121
    Using CLASSPATH:       /java/tomcat/apache-tomcat-9.0.0.M17/bin/bootstrap.jar:/java/tomcat/apache-tomcat-9.0.0.M17/bin/tomcat-juli.jar
    Tomcat started.

    虚拟机的ip地址为192.168.1.202

    查看tomcat

    关闭tomcat,直接执行bin下面的shutdown.sh文件

    hongdada@ubuntu:~$ cd /java
    hongdada@ubuntu:/java$ cd tomcat
    hongdada@ubuntu:/java/tomcat$ cd apache-tomcat-9.0.0.M17
    hongdada@ubuntu:/java/tomcat/apache-tomcat-9.0.0.M17$ sudo ./bin/shutdown.sh
    [sudo] hongdada 的密码: 
    Using CATALINA_BASE:   /java/tomcat/apache-tomcat-9.0.0.M17
    Using CATALINA_HOME:   /java/tomcat/apache-tomcat-9.0.0.M17
    Using CATALINA_TMPDIR: /java/tomcat/apache-tomcat-9.0.0.M17/temp
    Using JRE_HOME:        /java/jdk1.8.0_121
    Using CLASSPATH:       /java/tomcat/apache-tomcat-9.0.0.M17/bin/bootstrap.jar:/java/tomcat/apache-tomcat-9.0.0.M17/bin/tomcat-juli.jar
    hongdada@ubuntu:/java/tomcat/apache-tomcat-9.0.0.M17$ 

    为了每次能够在开机的时候自动启动tomcat

    修改/etc/rc.local文件

    #!/bin/sh -e
    #
    # rc.local
    #
    # This script is executed at the end of each multiuser runlevel.
    # Make sure that the script will "exit 0" on success or any other
    # value on error.
    #
    # In order to enable or disable this script just change the execution
    # bits.
    #
    # By default this script does nothing.
    
    #set java environment
    export JAVA_HOME=/java/jdk1.8.0_121
    export JRE_HOME=$JAVA_HOME/jre
    export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
    export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
    
    #tomcat
    export TOMCAT_HOME=/java/tomcat/apache-tomcat-9.0.0.M17
    
    #configuration
    /java/tomcat/apache-tomcat-9.0.0.M17/bin/startup.sh

    特别是#configuration下面的,用于自启动。

    重启以后发现tomcat并没有自动启动,网上查看发现原来我的/etc/rc.local没有执行权限

    hongdada@ubuntu:~$ ls -al /etc/rc.local
    -rw-rw-r-- 1 root root 628 3月   2 23:15 /etc/rc.local
    hongdada@ubuntu:~$ chmod +x /etc/rc.local
    chmod: 更改'/etc/rc.local' 的权限: 不允许的操作
    hongdada@ubuntu:~$ sudo chmod +x /etc/rc.local
    hongdada@ubuntu:~$ ls -al /etc/rc.local
    -rwxrwxr-x 1 root root 628 3月   2 23:15 /etc/rc.local
    hongdada@ubuntu:~$ 

    修改/etc/rc.local的执行权限,重启发现tomcat已经ok了。

    http://www.linuxidc.com/Linux/2017-02/140908.htm

    http://www.linuxdiyf.com/linux/27852.html

    http://blog.csdn.net/jacson_bai/article/details/45149431

  • 相关阅读:
    android 6.0 以上在doze模式精确定时
    MySQL 性能优化神器 Explain 使用分析
    android java层通过jni加载使用第三方的so库
    android 抓取native层奔溃
    mybatis面试入门
    Python实现异步 io多种方式
    可用率map处理
    雷哥带你走进Javascript
    前端存储技术
    听雷哥浅谈Redis
  • 原文地址:https://www.cnblogs.com/hongdada/p/6492809.html
Copyright © 2020-2023  润新知