catalina.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.

# -----------------------------------------------------------------------------

# Control Script for the CATALINA Server

#

# Environment Variable Prerequisites

#

# Do not set the variables in this script. Instead put them into a script

# setenv.sh in CATALINA_BASE/bin to keep your customizations separate.

#

# CATALINA_HOME May point at your Catalina "build" directory.

#

# CATALINA_BASE (Optional) Base directory for resolving dynamic portions

# of a Catalina installation. If not present, resolves to

# the same directory that CATALINA_HOME points to.

#

# CATALINA_OUT (Optional) Full path to a file where stdout and stderr

# will be redirected.

# Default is $CATALINA_BASE/logs/catalina.out

#

# CATALINA_OPTS (Optional) Java runtime options used when the "start",

# "run" or "debug" command is executed.

# Include here and not in JAVA_OPTS all options, that should

# only be used by Tomcat itself, not by the stop process,

# the version command etc.

# Examples are heap size, GC logging, JMX ports etc.

#

# CATALINA_TMPDIR (Optional) Directory path location of temporary directory

# the JVM should use (java.io.tmpdir). Defaults to

# $CATALINA_BASE/temp.

#

# JAVA_HOME Must point at your Java Development Kit installation.

# Required to run the with the "debug" argument.

#

# JRE_HOME Must point at your Java Runtime installation.

# Defaults to JAVA_HOME if empty. If JRE_HOME and JAVA_HOME

# are both set, JRE_HOME is used.

#

# JAVA_OPTS (Optional) Java runtime options used when any command

# is executed.

# Include here and not in CATALINA_OPTS all options, that

# should be used by Tomcat and also by the stop process,

# the version command etc.

# Most options should go into CATALINA_OPTS.

#

# JAVA_ENDORSED_DIRS (Optional) Lists of of colon separated directories

# containing some jars in order to allow replacement of APIs

# created outside of the JCP (i.e. DOM and SAX from W3C).

# It can also be used to update the XML parser implementation.

# Defaults to $CATALINA_HOME/endorsed.

#

# JPDA_TRANSPORT (Optional) JPDA transport used when the "jpda start"

# command is executed. The default is "dt_socket".

#

# JPDA_ADDRESS (Optional) Java runtime options used when the "jpda start"

# command is executed. The default is localhost:8000.

#

# JPDA_SUSPEND (Optional) Java runtime options used when the "jpda start"

# command is executed. Specifies whether JVM should suspend

# execution immediately after startup. Default is "n".

#

# JPDA_OPTS (Optional) Java runtime options used when the "jpda start"

# command is executed. If used, JPDA_TRANSPORT, JPDA_ADDRESS,

# and JPDA_SUSPEND are ignored. Thus, all required jpda

# options MUST be specified. The default is:

#

# -agentlib:jdwp=transport=$JPDA_TRANSPORT,

# address=$JPDA_ADDRESS,server=y,suspend=$JPDA_SUSPEND

#

# CATALINA_PID (Optional) Path of the file which should contains the pid

# of the catalina startup java process, when start (fork) is

# used

#

# LOGGING_CONFIG (Optional) Override Tomcat‘s logging config file

# Example (all one line)

# LOGGING_CONFIG="-Djava.util.logging.config.file=$CATALINA_BASE/conf/logging.properties"

#

# LOGGING_MANAGER (Optional) Override Tomcat‘s logging manager

# Example (all one line)

# LOGGING_MANAGER="-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager"

# -----------------------------------------------------------------------------

# OS specific support. $var _must_ be set to either true or false.

cygwin=false

darwin=false

os400=false

case "`uname`" in

CYGWIN*) cygwin=true;;

Darwin*) darwin=true;;

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

# Get standard environment variables

PRGDIR=`dirname "$PRG"`

# Only set CATALINA_HOME if not already set

[ -z "$CATALINA_HOME" ] && CATALINA_HOME=`cd "$PRGDIR/.." >/dev/null; pwd`

# Copy CATALINA_BASE from CATALINA_HOME if not already set

[ -z "$CATALINA_BASE" ] && CATALINA_BASE="$CATALINA_HOME"

# Ensure that neither CATALINA_HOME nor CATALINA_BASE contains a colon

# as this is used as the separator in the classpath and Java provides no

# mechanism for escaping if the same character appears in the path.

case $CATALINA_HOME in

*:*) echo "Using CATALINA_HOME: $CATALINA_HOME";

echo "Unable to start as CATALINA_HOME contains a colon (:) character";

exit 1;

esac

case $CATALINA_BASE in

*:*) echo "Using CATALINA_BASE: $CATALINA_BASE";

echo "Unable to start as CATALINA_BASE contains a colon (:) character";

exit 1;

esac

# Ensure that any user defined CLASSPATH variables are not used on startup,

# but allow them to be specified in setenv.sh, in rare case when it is needed.

CLASSPATH=

if [ -r "$CATALINA_BASE/bin/setenv.sh" ]; then

. "$CATALINA_BASE/bin/setenv.sh"

elif [ -r "$CATALINA_HOME/bin/setenv.sh" ]; then

. "$CATALINA_HOME/bin/setenv.sh"

fi

# For Cygwin, ensure paths are in UNIX format before anything is touched

if $cygwin; then

[ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"`

[ -n "$JRE_HOME" ] && JRE_HOME=`cygpath --unix "$JRE_HOME"`

[ -n "$CATALINA_HOME" ] && CATALINA_HOME=`cygpath --unix "$CATALINA_HOME"`

[ -n "$CATALINA_BASE" ] && CATALINA_BASE=`cygpath --unix "$CATALINA_BASE"`

[ -n "$CLASSPATH" ] && CLASSPATH=`cygpath --path --unix "$CLASSPATH"`

fi

# For OS400

if $os400; then

# Set job priority to standard for interactive (interactive - 6) by using

# the interactive priority - 6, the helper threads that respond to requests

# will be running at the same priority as interactive jobs.

COMMAND=‘chgjob job(‘$JOBNAME‘) runpty(6)‘

system $COMMAND

# Enable multi threading

export QIBM_MULTI_THREADED=Y

fi

# Get standard Java environment variables

if $os400; then

# -r 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

. "$CATALINA_HOME"/bin/setclasspath.sh

else

if [ -r "$CATALINA_HOME"/bin/setclasspath.sh ]; then

. "$CATALINA_HOME"/bin/setclasspath.sh

else

echo "Cannot find $CATALINA_HOME/bin/setclasspath.sh"

echo "This file is needed to run this program"

exit 1

fi

fi

# Add on extra jar files to CLASSPATH

if [ ! -z "$CLASSPATH" ] ; then

CLASSPATH="$CLASSPATH":

fi

CLASSPATH="$CLASSPATH""$CATALINA_HOME"/bin/bootstrap.jar

if [ -z "$CATALINA_OUT" ] ; then

CATALINA_OUT="$CATALINA_BASE"/logs/catalina.out

fi

if [ -z "$CATALINA_TMPDIR" ] ; then

# Define the java.io.tmpdir to use for Catalina

CATALINA_TMPDIR="$CATALINA_BASE"/temp

fi

# Add tomcat-juli.jar to classpath

# tomcat-juli.jar can be over-ridden per instance

if [ -r "$CATALINA_BASE/bin/tomcat-juli.jar" ] ; then

CLASSPATH=$CLASSPATH:$CATALINA_BASE/bin/tomcat-juli.jar

else

CLASSPATH=$CLASSPATH:$CATALINA_HOME/bin/tomcat-juli.jar

fi

# Bugzilla 37848: When no TTY is available, don‘t output to console

have_tty=0

if [ "`tty`" != "not a tty" ]; then

have_tty=1

fi

# For Cygwin, switch paths to Windows format before running java

if $cygwin; then

JAVA_HOME=`cygpath --absolute --windows "$JAVA_HOME"`

JRE_HOME=`cygpath --absolute --windows "$JRE_HOME"`

CATALINA_HOME=`cygpath --absolute --windows "$CATALINA_HOME"`

CATALINA_BASE=`cygpath --absolute --windows "$CATALINA_BASE"`

CATALINA_TMPDIR=`cygpath --absolute --windows "$CATALINA_TMPDIR"`

CLASSPATH=`cygpath --path --windows "$CLASSPATH"`

JAVA_ENDORSED_DIRS=`cygpath --path --windows "$JAVA_ENDORSED_DIRS"`

fi

# Set juli LogManager config file if it is present and an override has not been issued

if [ -z "$LOGGING_CONFIG" ]; then

if [ -r "$CATALINA_BASE"/conf/logging.properties ]; then

LOGGING_CONFIG="-Djava.util.logging.config.file=$CATALINA_BASE/conf/logging.properties"

else

# Bugzilla 45585

LOGGING_CONFIG="-Dnop"

fi

fi

if [ -z "$LOGGING_MANAGER" ]; then

LOGGING_MANAGER="-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager"

fi

# Uncomment the following line to make the umask available when using the

# org.apache.catalina.security.SecurityListener

#JAVA_OPTS="$JAVA_OPTS -Dorg.apache.catalina.security.SecurityListener.UMASK=`umask`"

# ----- Execute The Requested Command -----------------------------------------

# Bugzilla 37848: only output this if we have a TTY

if [ $have_tty -eq 1 ]; then

echo "Using CATALINA_BASE: $CATALINA_BASE"

echo "Using CATALINA_HOME: $CATALINA_HOME"

echo "Using CATALINA_TMPDIR: $CATALINA_TMPDIR"

if [ "$1" = "debug" ] ; then

echo "Using JAVA_HOME: $JAVA_HOME"

else

echo "Using JRE_HOME: $JRE_HOME"

fi

echo "Using CLASSPATH: $CLASSPATH"

if [ ! -z "$CATALINA_PID" ]; then

echo "Using CATALINA_PID: $CATALINA_PID"

fi

fi

if [ "$1" = "jpda" ] ; then

if [ -z "$JPDA_TRANSPORT" ]; then

JPDA_TRANSPORT="dt_socket"

fi

if [ -z "$JPDA_ADDRESS" ]; then

JPDA_ADDRESS="localhost:8000"

fi

if [ -z "$JPDA_SUSPEND" ]; then

JPDA_SUSPEND="n"

fi

if [ -z "$JPDA_OPTS" ]; then

JPDA_OPTS="-agentlib:jdwp=transport=$JPDA_TRANSPORT,address=$JPDA_ADDRESS,server=y,suspend=$JPDA_SUSPEND"

fi

CATALINA_OPTS="$CATALINA_OPTS $JPDA_OPTS"

shift

fi

if [ "$1" = "debug" ] ; then

if $os400; then

echo "Debug command not available on OS400"

exit 1

else

shift

if [ "$1" = "-security" ] ; then

if [ $have_tty -eq 1 ]; then

echo "Using Security Manager"

fi

shift

exec "$_RUNJDB" "$LOGGING_CONFIG" $LOGGING_MANAGER $JAVA_OPTS $CATALINA_OPTS \

-Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \

-sourcepath "$CATALINA_HOME"/../../java \

-Djava.security.manager \

-Djava.security.policy=="$CATALINA_BASE"/conf/catalina.policy \

-Dcatalina.base="$CATALINA_BASE" \

-Dcatalina.home="$CATALINA_HOME" \

-Djava.io.tmpdir="$CATALINA_TMPDIR" \

org.apache.catalina.startup.Bootstrap "[email protected]" start

else

exec "$_RUNJDB" "$LOGGING_CONFIG" $LOGGING_MANAGER $JAVA_OPTS $CATALINA_OPTS \

-Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \

-sourcepath "$CATALINA_HOME"/../../java \

-Dcatalina.base="$CATALINA_BASE" \

-Dcatalina.home="$CATALINA_HOME" \

-Djava.io.tmpdir="$CATALINA_TMPDIR" \

org.apache.catalina.startup.Bootstrap "[email protected]" start

fi

fi

elif [ "$1" = "run" ]; then

shift

if [ "$1" = "-security" ] ; then

if [ $have_tty -eq 1 ]; then

echo "Using Security Manager"

fi

shift

eval exec "\"$_RUNJAVA\"" "\"$LOGGING_CONFIG\"" $LOGGING_MANAGER $JAVA_OPTS $CATALINA_OPTS \

-Djava.endorsed.dirs="\"$JAVA_ENDORSED_DIRS\"" -classpath "\"$CLASSPATH\"" \

-Djava.security.manager \

-Djava.security.policy=="\"$CATALINA_BASE/conf/catalina.policy\"" \

-Dcatalina.base="\"$CATALINA_BASE\"" \

-Dcatalina.home="\"$CATALINA_HOME\"" \

-Djava.io.tmpdir="\"$CATALINA_TMPDIR\"" \

org.apache.catalina.startup.Bootstrap "[email protected]" start

else

eval exec "\"$_RUNJAVA\"" "\"$LOGGING_CONFIG\"" $LOGGING_MANAGER $JAVA_OPTS $CATALINA_OPTS \

-Djava.endorsed.dirs="\"$JAVA_ENDORSED_DIRS\"" -classpath "\"$CLASSPATH\"" \

-Dcatalina.base="\"$CATALINA_BASE\"" \

-Dcatalina.home="\"$CATALINA_HOME\"" \

-Djava.io.tmpdir="\"$CATALINA_TMPDIR\"" \

org.apache.catalina.startup.Bootstrap "[email protected]" start

fi

elif [ "$1" = "start" ] ; then

if [ ! -z "$CATALINA_PID" ]; then

if [ -f "$CATALINA_PID" ]; then

if [ -s "$CATALINA_PID" ]; then

echo "Existing PID file found during start."

if [ -r "$CATALINA_PID" ]; then

PID=`cat "$CATALINA_PID"`

ps -p $PID >/dev/null 2>&1

if [ $? -eq 0 ] ; then

echo "Tomcat appears to still be running with PID $PID. Start aborted."

exit 1

else

echo "Removing/clearing stale PID file."

rm -f "$CATALINA_PID" >/dev/null 2>&1

if [ $? != 0 ]; then

if [ -w "$CATALINA_PID" ]; then

cat /dev/null > "$CATALINA_PID"

else

echo "Unable to remove or clear stale PID file. Start aborted."

exit 1

fi

fi

fi

else

echo "Unable to read PID file. Start aborted."

exit 1

fi

else

rm -f "$CATALINA_PID" >/dev/null 2>&1

if [ $? != 0 ]; then

if [ ! -w "$CATALINA_PID" ]; then

echo "Unable to remove or write to empty PID file. Start aborted."

exit 1

fi

fi

fi

fi

fi

shift

touch "$CATALINA_OUT"

if [ "$1" = "-security" ] ; then

if [ $have_tty -eq 1 ]; then

echo "Using Security Manager"

fi

shift

eval "\"$_RUNJAVA\"" "\"$LOGGING_CONFIG\"" $LOGGING_MANAGER $JAVA_OPTS $CATALINA_OPTS \

-Djava.endorsed.dirs="\"$JAVA_ENDORSED_DIRS\"" -classpath "\"$CLASSPATH\"" \

-Djava.security.manager \

-Djava.security.policy=="\"$CATALINA_BASE/conf/catalina.policy\"" \

-Dcatalina.base="\"$CATALINA_BASE\"" \

-Dcatalina.home="\"$CATALINA_HOME\"" \

-Djava.io.tmpdir="\"$CATALINA_TMPDIR\"" \

org.apache.catalina.startup.Bootstrap "[email protected]" start \

>> "$CATALINA_OUT" 2>&1 "&"

else

eval "\"$_RUNJAVA\"" "\"$LOGGING_CONFIG\"" $LOGGING_MANAGER $JAVA_OPTS $CATALINA_OPTS \

-Djava.endorsed.dirs="\"$JAVA_ENDORSED_DIRS\"" -classpath "\"$CLASSPATH\"" \

-Dcatalina.base="\"$CATALINA_BASE\"" \

-Dcatalina.home="\"$CATALINA_HOME\"" \

-Djava.io.tmpdir="\"$CATALINA_TMPDIR\"" \

org.apache.catalina.startup.Bootstrap "[email protected]" start \

>> "$CATALINA_OUT" 2>&1 "&"

fi

if [ ! -z "$CATALINA_PID" ]; then

echo $! > "$CATALINA_PID"

fi

echo "Tomcat started."

elif [ "$1" = "stop" ] ; then

shift

SLEEP=5

if [ ! -z "$1" ]; then

echo $1 | grep "[^0-9]" >/dev/null 2>&1

if [ $? -gt 0 ]; then

SLEEP=$1

shift

fi

fi

FORCE=0

if [ "$1" = "-force" ]; then

shift

FORCE=1

fi

if [ ! -z "$CATALINA_PID" ]; then

if [ -f "$CATALINA_PID" ]; then

if [ -s "$CATALINA_PID" ]; then

kill -0 `cat "$CATALINA_PID"` >/dev/null 2>&1

if [ $? -gt 0 ]; then

echo "PID file found but no matching process was found. Stop aborted."

exit 1

fi

else

echo "PID file is empty and has been ignored."

fi

else

echo "\$CATALINA_PID was set but the specified file does not exist. Is Tomcat running? Stop aborted."

exit 1

fi

fi

eval "\"$_RUNJAVA\"" $LOGGING_MANAGER $JAVA_OPTS \

-Djava.endorsed.dirs="\"$JAVA_ENDORSED_DIRS\"" -classpath "\"$CLASSPATH\"" \

-Dcatalina.base="\"$CATALINA_BASE\"" \

-Dcatalina.home="\"$CATALINA_HOME\"" \

-Djava.io.tmpdir="\"$CATALINA_TMPDIR\"" \

org.apache.catalina.startup.Bootstrap "[email protected]" stop

# stop failed. Shutdown port disabled? Try a normal kill.

if [ $? != 0 ]; then

if [ ! -z "$CATALINA_PID" ]; then

echo "The stop command failed. Attempting to signal the process to stop through OS signal."

kill -15 `cat "$CATALINA_PID"` >/dev/null 2>&1

fi

fi

if [ ! -z "$CATALINA_PID" ]; then

if [ -f "$CATALINA_PID" ]; then

while [ $SLEEP -ge 0 ]; do

kill -0 `cat "$CATALINA_PID"` >/dev/null 2>&1

if [ $? -gt 0 ]; then

rm -f "$CATALINA_PID" >/dev/null 2>&1

if [ $? != 0 ]; then

if [ -w "$CATALINA_PID" ]; then

cat /dev/null > "$CATALINA_PID"

# If Tomcat has stopped don‘t try and force a stop with an empty PID file

FORCE=0

else

echo "The PID file could not be removed or cleared."

fi

fi

echo "Tomcat stopped."

break

fi

if [ $SLEEP -gt 0 ]; then

sleep 1

fi

if [ $SLEEP -eq 0 ]; then

if [ $FORCE -eq 0 ]; then

echo "Tomcat did not stop in time. PID file was not removed. To aid diagnostics a thread dump has been written to standard out."

kill -3 `cat "$CATALINA_PID"`

fi

fi

SLEEP=`expr $SLEEP - 1 `

done

fi

fi

KILL_SLEEP_INTERVAL=5

if [ $FORCE -eq 1 ]; then

if [ -z "$CATALINA_PID" ]; then

echo "Kill failed: \$CATALINA_PID not set"

else

if [ -f "$CATALINA_PID" ]; then

PID=`cat "$CATALINA_PID"`

echo "Killing Tomcat with the PID: $PID"

kill -9 $PID

while [ $KILL_SLEEP_INTERVAL -ge 0 ]; do

kill -0 `cat "$CATALINA_PID"` >/dev/null 2>&1

if [ $? -gt 0 ]; then

rm -f "$CATALINA_PID" >/dev/null 2>&1

if [ $? != 0 ]; then

if [ -w "$CATALINA_PID" ]; then

cat /dev/null > "$CATALINA_PID"

else

echo "The PID file could not be removed."

fi

fi

# Set this to zero else a warning will be issued about the process still running

KILL_SLEEP_INTERVAL=0

echo "The Tomcat process has been killed."

break

fi

if [ $KILL_SLEEP_INTERVAL -gt 0 ]; then

sleep 1

fi

KILL_SLEEP_INTERVAL=`expr $KILL_SLEEP_INTERVAL - 1 `

done

if [ $KILL_SLEEP_INTERVAL -gt 0 ]; then

echo "Tomcat has not been killed completely yet. The process might be waiting on some system call or might be UNINTERRUPTIBLE."

fi

fi

fi

fi

elif [ "$1" = "configtest" ] ; then

eval "\"$_RUNJAVA\"" $LOGGING_MANAGER $JAVA_OPTS \

-Djava.endorsed.dirs="\"$JAVA_ENDORSED_DIRS\"" -classpath "\"$CLASSPATH\"" \

-Dcatalina.base="\"$CATALINA_BASE\"" \

-Dcatalina.home="\"$CATALINA_HOME\"" \

-Djava.io.tmpdir="\"$CATALINA_TMPDIR\"" \

org.apache.catalina.startup.Bootstrap configtest

result=$?

if [ $result -ne 0 ]; then

echo "Configuration error detected!"

fi

exit $result

elif [ "$1" = "version" ] ; then

"$_RUNJAVA" \

-classpath "$CATALINA_HOME/lib/catalina.jar" \

org.apache.catalina.util.ServerInfo

else

echo "Usage: catalina.sh ( commands ... )"

echo "commands:"

if $os400; then

echo " debug Start Catalina in a debugger (not available on OS400)"

echo " debug -security Debug Catalina with a security manager (not available on OS400)"

else

echo " debug Start Catalina in a debugger"

echo " debug -security Debug Catalina with a security manager"

fi

echo " jpda start Start Catalina under JPDA debugger"

echo " run Start Catalina in the current window"

echo " run -security Start in the current window with security manager"

echo " start Start Catalina in a separate window"

echo " start -security Start in a separate window with security manager"

echo " stop Stop Catalina, waiting up to 5 seconds for the process to end"

echo " stop n Stop Catalina, waiting up to n seconds for the process to end"

echo " stop -force Stop Catalina, wait up to 5 seconds and then use kill -KILL if still running"

echo " stop n -force Stop Catalina, wait up to n seconds and then use kill -KILL if still running"

echo " configtest Run a basic syntax check on server.xml - check exit code for result"

echo " version What version of tomcat are you running?"

echo "Note: Waiting for the process to end and use of the -force option require that \$CATALINA_PID is defined"

exit 1

fi

原文地址:https://www.cnblogs.com/skyzy/p/9226827.html

时间: 2024-10-15 09:00:30

catalina.sh的相关文章

启动tomcat的Cannot find ./catalina.sh 的问题

从终端进入tomcat的bin目录,然后执行startup.sh Cannot find bin/catalina.sh The file is absent or does not have execute permission This file is needed to run this program 其实这里是权限, 解决方法: 依旧在tomcat 的bin目录下 执行 chmod +x *.sh 然后用sh startup.sh启动成功

tomcat catalina.sh JAVA_OPTS参数说明与配置

文章来源:http://blog.csdn.NET/cuker919/article/details/8233821 牛人写JVM的博客: http://blog.csdn.net/java2000_wl/article/category/1249100 http://blog.csdn.Net/cutesource/article/details/5904501 有几个链接: http://www.cnblogs.com/fantiantian/p/3623740.html   查看tomca

linux下启动tomcat----Cannot find ./catalina.sh

参考:http://dearseven.blog.163.com/blog/static/1005379222013764440253/ linux 下启动tomcat [[email protected] bin]# sh startup.sh Cannot find ./catalina.shThe file is absent or does not have execute permissionThis file is needed to run this program 解决办法:给.

tomcat7的catalina.sh配置说明

捞财宝项目8G内存tomcat7的配置JAVA_OPTS="-Xms1024m -Xmx2048m -XX:PermSize=128M -XX:MaxNewSize=2048M  -XX:MaxPermSize=2048M -Dglobal.config.path=/home/deployer/properties -Dfile.encoding=UTF8" -XX:PermSize  -XX:MaxPermSize–设置永久区的初始空间和最大空间-XX:PermSize 设置持久代(

omcat运行控制脚本catalina.sh分析

分析catalina.sh脚本的目的,一个是学习脚本中shell的各类用法,还有就是为编写tomcat多服务器远程启动脚本做准备,实现版本上线自动化无人干预部署,此前作者已发表" tomcat变量环境脚本setclasspath.sh分析"来为此篇作为铺垫,需要两篇文章一起看,才能全面的分析出tomcat的启动过程. tomcat版本:6.0.35 #!/bin/sh # Licensed to the Apache Software Foundation (ASF) under on

liunx下tomcat启动 Cannot find ./catalina.sh

执行启动tomcat命令./startup.sh 提示 Cannot find ./catalina.sh The file is absent or does not have execute permission This file is needed to run this program 问题原因:没有给bin目录下的文件授权可执行权限: chmod +x bin/*.sh 然后用sh startup.sh启动成功

mac安装tomcat,找不到catalina.sh

1. 首先进入tomcat文件夹 cd Desktop/tomcat7/bin 2. ls -al *.sh 3. chmod +x .*sh 4. ls -al *.sh 5. ./startup.sh 就可以启动tomcat了 6. ./shutdown.sh 关闭tomcat服务 ***MacBook-Pro:~ ***$ cd Desktop/tomcat7/bin ***MacBook-Pro:bin ***$ ls -al *.sh [email protected] 1 ***  

jvm 调整tomcat的堆内存和常驻内存catalina.sh

4.2 性能优化 tomcat性能取决于你的内存大小 上策:优化代码 中策:jvm优化机制  垃圾回收机制 把不需要的内存回收   优化jvm--优化垃圾回收策略 优化catalina.sh配置文件.在catalina.sh配置文件中添加以下代码: #tomcat分配1G内存模板 JAVA_OPTS="-Djava.awt.headless=true -Dfile.encoding=UTF-8 -server -Xms1024m -Xmx1024m -XX:NewSize=512m -XX:Ma

centOS6.5 修改catalina.sh使用crontab自动切割日志tomcat8

1.添加LD_LIBRARY_PATH #!/bin/shLD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/apr/libexport LD_LIBRARY_PATH 2.修改jvm参数 # OS specific support. $var _must_ be set to either true or false.#export JAVA_OPTS="-server -Dfile.encoding=UTF-8 -Duser.language=zh_CN