#!/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.# # IF YOU ARE READING THIS, YOU ARE VIOLATING YOUR LICENSE AGREEMENT. # # $Id$ # This script runs a java command, using the standard metacarta environment. if [ "$JAVA_HOME" = "" ] ; then JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun fi # Pull together extra jar files into extra classpath EXTRACLASS="" for filename in $(ls -1 /usr/lib/metacarta/java-common) do EXTRACLASS="$EXTRACLASS":/usr/lib/metacarta/java-common/"$filename" done for filename in $(ls -1 /usr/lib/metacarta/java-environment) do EXTRACLASS="$EXTRACLASS":/usr/lib/metacarta/java-environment/"$filename" done # Do extra classpath stuff for filename in $(ls -1 /usr/lib/metacarta/java-classpath) do EXTRACLASS="$EXTRACLASS":$(cat /usr/lib/metacarta/java-classpath/"$filename" | tr -d "\n") done # Set specified variables for filename in $(ls -1 /usr/lib/metacarta/java-vars) do export "$filename"=$(cat /usr/lib/metacarta/java-vars/"$filename" | tr -d "\n") done # Do defines DEFINESET="" for filename in $(ls -1 /usr/lib/metacarta/java-defines) do TERM=-D"$filename"=$(cat /usr/lib/metacarta/java-defines/"$filename" | tr -d "\n") DEFINESET="$DEFINESET $TERM" done # Find memory base size BASESIZE=16 for filename in $(ls -1 /var/lib/metacarta/java-utilities-base-sizes) do SIZE=$(cat /var/lib/metacarta/java-utilities-base-sizes/"$filename" | tr -d "\n") if ((SIZE>BASESIZE)); then BASESIZE=$SIZE fi done # Add up incremental sizes for filename in $(ls -1 /var/lib/metacarta/java-utilities-incremental-sizes) do SIZE=$(cat /var/lib/metacarta/java-utilities-incremental-sizes/"$filename" | tr -d "\n") BASESIZE=$((BASESIZE+SIZE)) done # Set up proper .so path JAVALIBPATH="$JAVA_HOME"/jre/lib/i386/client:"$JAVA_HOME"/jre/lib/i386:"$JAVA_HOME"/lib/i386:/usr/lib # Call java CLASSNAME=$1 shift "$JAVA_HOME"/bin/java -XX:HeapDumpPath=/common/metacarta/java-heap-dumps -XX:+HeapDumpOnOutOfMemoryError $DEFINESET -Djava.library.path="$JAVALIBPATH" -Djava.io.tmpdir=/common/metacarta/java-temp -classpath "$JAVA_HOME"/jre/lib/rt.jar:"$JAVA_HOME"/lib/tools.jar"$EXTRACLASS" -Xmx"$BASESIZE"m -Xms32m "$CLASSNAME" "$@"