Wenn du mit Spring Boot arbeitest, bist du wahrscheinlich bereits mit den verschiedenen Profiles (z. B. dev, test, prod) vertraut. Diese Profile helfen dir dabei, verschiedene Konfigurationen je nach Umgebung zu verwenden – beispielsweise unterschiedliche Datenbankverbindungen oder Logging-Einstellungen.
In diesem Tutorial lernst du, wie du in IntelliJ IDEA eine bestimmte application.properties-Datei mit einem spezifischen Profil auswählst, wenn du deine Anwendung debuggst. Außerdem erklären wir typische Fehler und wie du sie vermeidest.
🧰 Voraussetzungen
Bevor du beginnst, stelle sicher, dass dein Projekt folgende Struktur aufweist:
src/
└── main/
└── resources/
├── application.properties
├── application-dev.properties
├── application-test.properties
└── application-prod.properties
🔧 Schritt-für-Schritt-Anleitung: Profil in IntelliJ IDEA auswählen
1. Projekt korrekt konfigurieren
Stelle sicher, dass deine Haupt-Konfigurationsdateien vorhanden sind:
application.properties: Allgemeine Einstellungenapplication-dev.properties: Entwicklungsumgebungapplication-prod.properties: Produktivumgebung
2. Debug-Konfiguration erstellen oder bearbeiten
- Öffne IntelliJ IDEA.
- Gehe zum Menü Run → Edit Configurations…
- Klicke auf das + (Plus-Symbol) und wähle Spring Boot aus.
3. Environment Variables setzen
Im Fenster der Konfiguration findest du den Bereich Environment variables.
Füge folgende Umgebungsvariable hinzu:
SPRING_PROFILES_ACTIVE=dev
💡 Tipp: Ersetze
devmit dem gewünschten Profil, z. B.testoderprod.
Dieser Parameter sorgt dafür, dass Spring Boot das entsprechende Profil lädt.
4. Arbeitsverzeichnis prüfen
Stelle sicher, dass im Feld Working directory der Root-Pfad deines Projekts eingetragen ist (normalerweise $PROJECT_DIR$).
🧪 Beispiel: Debuggen mit application-test.properties
Angenommen, du möchtest deine Anwendung in einer Test-Umgebung debuggen:
- Erstelle eine neue Debug-Konfiguration.
- Setze in Environment variables:
SPRING_PROFILES_ACTIVE=test
- Starte den Debugger – jetzt wird
application-test.propertiesverwendet.
🚨 Häufige Probleme und Fehler
❌ Problem 1: Profil wird nicht geladen
Ursache:
Die Umgebungsvariable wurde nicht korrekt gesetzt oder die Datei fehlt.
Lösung:
- Prüfe ob
application-test.propertiesexistiert. - Achte darauf, dass der Name korrekt geschrieben ist.
- Bestätige, dass
SPRING_PROFILES_ACTIVE=testin der Konfiguration steht.
❌ Problem 2: Veraltete Einstellungen werden verwendet
Ursache:
IntelliJ hat den Cache oder die alte Konfiguration noch im Speicher.
Lösung:
- Schließe IntelliJ IDEA.
- Lösche den
.idea-Ordner (nur bei Bedarf). - Starte IntelliJ neu und erstelle eine neue Debug-Konfiguration.
❌ Problem 3: application.properties überschreibt Profil-Einstellungen
Ursache:
Du hast Einstellungen sowohl in der Hauptdatei als auch im Profil definiert – dabei hat die Hauptdatei Vorrang.
Lösung:
- Nutze Profile ausschließlich für Umgebungsspezifische Werte.
- Verwende
application.propertiesnur für gemeinsame Einstellungen.
❌ Problem 4: Fehler bei Build-Prozess (Maven)
Wenn du Maven nutzt, kann es passieren, dass beim Bauen die falschen Profile aktiviert werden.
Lösung:
Stelle sicher, dass du beim Bauen explizit das richtige Profil angibst:
mvn clean package -Dspring.profiles.active=prod
🚀 Produktivumgebung: Wie wird application-prod.properties verwendet?
In einer echten Produktivumgebung solltest du sicherstellen, dass das korrekte Profil aktiv ist. Hier einige gängige Methoden:
1. Maven-Build mit aktivem Profil
mvn clean package -Dspring.profiles.active=prod
2. Docker-Deployment
Füge die Konfiguration direkt in deinen Container ein:
FROM openjdk:11-jre-slim
COPY target/your-application.jar /app/your-application.jar
WORKDIR /app
CMD ["java", "-jar", "your-application.jar"]
Alternativ kannst du auch Umgebungsvariablen übergeben:
docker run -e SPRING_PROFILES_ACTIVE=prod your-image-name
3. Umgebungsvariablen im Betriebssystem
Setze die Variable direkt beim Starten der Anwendung:
SPRING_PROFILES_ACTIVE=prod java -jar your-application.jar
📝 Fazit
Mit der korrekten Einstellung von SPRING_PROFILES_ACTIVE in IntelliJ IDEA kannst du problemlos verschiedene Umgebungen debuggen. Es ist entscheidend, dass du:
- Die richtigen Dateien im Projekt hast (
application-dev.properties,application-prod.properties, etc.) - Die Debug-Konfiguration korrekt einrichtest
- Umgebungsvariablen setzen und prüfen
Durch das Verständnis dieser Grundlagen kannst du Fehler vermeiden, die zu unerwartetem Verhalten führen können – besonders in komplexen Deployment-Szenarien.