Подтвердить что ты не робот

Сгенерировать файл войны из папки tomcat webapp

У меня есть сервер tomcat, и там у меня есть папка webapp my_web_app.

Я не развертывал проект; У меня есть только эта папка этого приложения (как TOMCAT_DIR/webapps/my_web_app).

Мне нужен файл WAR. Как я могу создать файл .war из этого webapp?

4b9b3361

Ответ 1

Вы можете создать .war файл из существующей папки.

С помощью этой команды

cd /to/your/folder/location
jar -cvf my_web_app.war *

Ответ 2

Его так же, как создание файла WAR вашего проекта, вы можете сделать это несколькими способами (из Eclipse, командной строки, maven).

Если вы хотите сделать из командной строки, команда

jar -cvf my_web_app.war * 

Это означает, что "сжимайте все в этом каталоге в файл с именем my_web_app.war" (c = create, v = verbose, f = файл)

Ответ 3

Существует способ создания военного файла вашего проекта из eclipse.

Сначала создайте xml файл со следующим кодом,

Замените HistoryCheck на ваше имя проекта.

<?xml version="1.0" encoding="UTF-8"?>
<project name="HistoryCheck" basedir="." default="default">
    <target name="default" depends="buildwar,deploy"></target>
    <target name="buildwar">
        <war basedir="war" destfile="HistoryCheck.war" webxml="war/WEB-INF/web.xml">
            <exclude name="WEB-INF/**" />
            <webinf dir="war/WEB-INF/">
                <include name="**/*.jar" />
            </webinf>
        </war>
    </target>
    <target name="deploy">
        <copy file="HistoryCheck.war" todir="." />
    </target>
</project>

Теперь в Проводнике проекта щелкните правой кнопкой мыши на этом файле xml и Запустить as- > ant build

Вы можете увидеть военный файл вашего проекта в папке проекта.

Ответ 4

Создайте военный файл в другом каталоге, где содержимое в противном случае команда jar может попытаться закрепить файл, который он создает.

#!/bin/bash

set -euo pipefail

war=app.war
src=contents

# Clean last war build
if [ -e ${war} ]; then
    echo "Removing old war ${war}"
    rm -rf ${war}
fi

# Build war
if [ -d ${src} ]; then
    echo "Found source at ${src}"
    cd ${src}
    jar -cvf ../${war} *
    cd ..
fi

# Show war details
ls -la ${war}