Ich habe zwei Module A und B. Actualy B ist ein Plugin für A.
B hängt in der Kompilierzeit von A ab. A NICHT abhängig von B.
Auf einer Laufzeit möchte ich B zum Klassenpfad hinzufügen, also füge ich in A's pom.xml die folgende Abhängigkeit hinzu
pom.xml
Maven-Prozess fehlgeschlagen mit zyklischem Abhängigkeitsfehler
%Vor%[FEHLER]
Warum beeinflusst die Laufzeitabhängigkeit die Kompilierzeit?
Wie von Conan vorgeschlagen, und wenn möglich, extrahieren Sie Ihren gemeinsamen Code in ein separates Modul, um die Zyklizität zu beheben. Normalerweise würde man in solchen Fällen allgemeine Schnittstellen und die Kernklassen in ein separates Modul extrahieren, das um beide Module erweitert wird, die die zyklische Abhängigkeit verursachen. Sie würden dann die direkten Abhängigkeiten von den Modulen entfernen, die sich ursprünglich in einem zyklischen Zustand befanden. Manchmal ist dies sehr schwer zu lösen, aber durch die Modularisierung des Codes können Sie herausfinden, wie Sie Ihren Code so umgestalten, dass er leicht wiederverwendbar ist.