2016-04-05 7 views
0

Поражайте меня, поскольку это мой первый сервлет Java, использующий Tomcat. Я написал его в Eclipse на Windows и вам нужно написать скрипт сборки и запустить для него скрипт.Написание сценария оболочки для создания и развертывания WAR-файла

Из того, что мне сказали, пользователь, которому я отправляю это, должен будет установить Tomcat для запуска этой WAR.

Если это так, мой сценарий сборки потребуется 1. Установите на их кот ноутбук 2. Развертывание моя война с ним

и мой выполнения сценария просто нужно запустить мою программу?

+0

Вы собираетесь поддерживать отдельных лиц/организаций, у которых уже установлен экземпляр tomcat? Другой подход состоит в том, чтобы не пытаться установить tomcat * per se *, но создайте .zip/.tar.gz, в котором tomcat и ваше приложение уже развернуты внутри него. Затем просто извлеките .zip/.tar.gz и запустите tomcat. Этот подход используется, например, для Atlassian для своих проектов tomcat. – KevinO

+0

Пробная весенняя ботинок? Goto start.spring.io и выберите нужные вам технологии. Создайте и загрузите проект в формате maven (файл проекта pom.xml) Создайте и распространите исполняемый файл jar с встроенным сервлетом и tomcat. Ваша банка может быть даже превращена в «настоящий» исполняемый файл (на самом деле ваша банка встроена в сценарий оболочки, поэтому вы можете запустить ее из командной строки без использования «java -jar ...»), и вы можете легко установить это как сервис/демон. Это самый простой способ сделать это. –

+0

@jonmartinsolaas Ницца! Я займусь этим. Будет ли это работать, если пользователь не установил tomcat? Если tomcat встроен в мою банку, он просто запустится или пользователь все равно должен будет установить tomcat на своем компьютере перед запуском моей программы? – Kevin

ответ

-1

Я думаю, что это может помочь вам: https://gist.github.com/geowa4/1428257

#!/bin/bash 
TOMCAT=apache-tomcat-7.0.23 
TOMCAT_WEBAPPS=$TOMCAT/webapps 
TOMCAT_CONFIG=$TOMCAT/conf/server.xml 
TOMCAT_START=$TOMCAT/bin/startup.sh 
TOMCAT_ARCHIVE=$TOMCAT.tar.gz 
TOMCAT_URL=http://apache.mirrorcatalogs.com/tomcat/tomcat-7/v7.0.23/bin/$TOMCAT_ARCHIVE 
WAR_FILE=whatever.war 

if [ ! -e $TOMCAT ]; then 
if [ ! -r $TOMCAT_ARCHIVE ]; then 
if [ -n "$(which curl)" ]; then 
    curl -O $TOMCAT_URL 
elif [ -n "$(which wget)" ]; then 
    wget $TOMCAT_URL 
fi 
fi 

if [ ! -r $TOMCAT_ARCHIVE ]; then 
echo "Tomcat could not be downloaded." 1>&2 
echo "Verify that eiter curl or wget is installed." 1>&2 
echo "If they are, check your internet connection and try again." 1>&2 
echo "You may also download $TOMCAT_ARCHIVE and place it in this folder." 1>&2 
exit 1 
fi 

tar -zxf $TOMCAT_ARCHIVE 
rm $TOMCAT_ARCHIVE 
fi 

if [ ! -w $TOMCAT -o ! -w $TOMCAT_WEBAPPS ]; then 
echo "$TOMCAT and $TOMCAT_WEBAPPS must be writable." 1>&2 
exit 1 
fi 

if [ ! -r $WAR_FILE ]; then 
echo "$WAR_FILE is missing. Download it and run this again to deploy it." 1>&2 
else 
cp $WAR_FILE $TOMCAT_WEBAPPS 
fi 

Это ш файл, так что вы можете использовать в Linux.

+0

Хотя эта ссылка может ответить на вопрос, лучше включить здесь основные части ответа и предоставить ссылку для справки. Ответные ссылки могут стать недействительными, если связанная страница изменится. - [Из обзора] (/ review/low-quality-posts/17102001) –

Смежные вопросы