#!/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 " 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@:/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