100 lines
2.9 KiB
Bash
Executable File
100 lines
2.9 KiB
Bash
Executable File
#!/bin/bash
|
|
#
|
|
# Kompiliert den Mail2FaxBlock für STARFACE Module Designer
|
|
#
|
|
|
|
set -e
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
cd "$SCRIPT_DIR"
|
|
|
|
echo "========================================"
|
|
echo " Mail2FaxBlock Kompilierung"
|
|
echo "========================================"
|
|
echo ""
|
|
|
|
# JavaMail Bibliothek herunterladen falls nicht vorhanden
|
|
DEPS_DIR="libs/deps"
|
|
mkdir -p "$DEPS_DIR"
|
|
|
|
if [ ! -f "$DEPS_DIR/javax.mail.jar" ]; then
|
|
echo "Lade JavaMail Bibliothek herunter..."
|
|
curl -sL -o "$DEPS_DIR/javax.mail.jar" \
|
|
"https://repo1.maven.org/maven2/com/sun/mail/javax.mail/1.6.2/javax.mail-1.6.2.jar"
|
|
echo " javax.mail.jar heruntergeladen"
|
|
fi
|
|
|
|
if [ ! -f "$DEPS_DIR/activation.jar" ]; then
|
|
echo "Lade Activation Framework herunter..."
|
|
curl -sL -o "$DEPS_DIR/activation.jar" \
|
|
"https://repo1.maven.org/maven2/javax/activation/activation/1.1.1/activation-1.1.1.jar"
|
|
echo " activation.jar heruntergeladen"
|
|
fi
|
|
|
|
echo ""
|
|
|
|
# Classpath zusammenbauen - STARFACE JARs
|
|
CLASSPATH=""
|
|
for jar in libs/starface/*.jar; do
|
|
if [ -f "$jar" ]; then
|
|
CLASSPATH="$CLASSPATH:$jar"
|
|
fi
|
|
done
|
|
|
|
# Zusätzliche Dependencies hinzufügen
|
|
for jar in libs/deps/*.jar; do
|
|
if [ -f "$jar" ]; then
|
|
CLASSPATH="$CLASSPATH:$jar"
|
|
fi
|
|
done
|
|
|
|
CLASSPATH="${CLASSPATH:1}"
|
|
|
|
if [ -z "$CLASSPATH" ]; then
|
|
echo "FEHLER: Keine STARFACE JARs gefunden in libs/starface/"
|
|
echo "Führe zuerst aus: ../fetch-starface-libs.sh <starface-ip>"
|
|
exit 1
|
|
fi
|
|
|
|
echo "Kompiliere Mail2FaxBlock.java..."
|
|
javac -source 21 -target 21 \
|
|
-cp "$CLASSPATH" \
|
|
-proc:none \
|
|
Mail2FaxBlock.java
|
|
|
|
echo "Kompiliere Mail2FaxCleanup.java..."
|
|
javac -source 21 -target 21 \
|
|
-cp "$CLASSPATH" \
|
|
-proc:none \
|
|
Mail2FaxCleanup.java
|
|
|
|
if [ -f "Mail2FaxBlock.class" ] && [ -f "Mail2FaxCleanup.class" ]; then
|
|
echo ""
|
|
echo "========================================"
|
|
echo " Erfolgreich!"
|
|
echo "========================================"
|
|
echo ""
|
|
echo "Dateien:"
|
|
ls -lh Mail2FaxBlock.class Mail2FaxCleanup.class
|
|
echo ""
|
|
echo "WICHTIG: Die JavaMail-Bibliothek muss auch auf der STARFACE sein!"
|
|
echo "Falls Fehler auftreten, kopiere javax.mail.jar nach STARFACE:"
|
|
echo " scp libs/deps/javax.mail.jar root@<starface>:/opt/tomcat/webapps/localhost/starface/WEB-INF/lib/"
|
|
echo ""
|
|
echo "Nächste Schritte:"
|
|
echo "1. STARFACE Admin öffnen"
|
|
echo "2. Module → Module Designer → Neues Modul"
|
|
echo "3. Unter 'Ressourcen' BEIDE .class Dateien hochladen:"
|
|
echo " - Mail2FaxBlock.class"
|
|
echo " - Mail2FaxCleanup.class"
|
|
echo "4. Zwei Funktionsbausteine erstellen:"
|
|
echo " - Mail2FaxBlock (Hauptfunktion für Timer)"
|
|
echo " - Mail2FaxCleanup (für 'activate' Entrypoint)"
|
|
echo "5. Timer-Baustein für Mail2FaxBlock hinzufügen"
|
|
echo "6. Entrypoint 'activate' mit Mail2FaxCleanup verknüpfen"
|
|
echo ""
|
|
else
|
|
echo "FEHLER: Kompilierung fehlgeschlagen"
|
|
exit 1
|
|
fi
|