minova-afis / aero.minova.cas

Service for Accessing SQL-Servers and Filesystems via JSON Abrechnung={MIN/INTERN-MIN/CORE/ZPROGRAM}
Eclipse Public License 2.0
4 stars 2 forks source link

Transitive Abhängigkeiten aktualisieren #952

Open martins-1992 opened 7 months ago

martins-1992 commented 7 months ago

Beschreibung:

Zur Zeit kann man transitive Abhängigkeiten via dependencies oder dependencyManagement in der POM nicht aktualisieren. Hat bei einem Versuch mit Data Schema nicht geklappt. Über mvn dependency:tree sieht man, dass dependencyManagment an sich funktioniert. Der Grund für das Problem ist der target/docker-layer-Ordner, welcher durch das Parent erstellt wird. Vielleicht ist dies in CAS 13 aber auch schon gelöst.

Dieses Issue sollte man angehen, nachdem #884 durch ist.

    <dependencies>
        <dependency>
            <groupId>com.minova</groupId>
            <artifactId>sis.app</artifactId>
            <version>12.9.16</version>
            <classifier>app</classifier>
        </dependency>
        <dependency>
            <groupId>aero.minova</groupId>
            <artifactId>data.schema.app</artifactId>
            <version>12.12.6</version>
            <classifier>app</classifier>
        </dependency>
    </dependencies>
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>aero.minova</groupId>
                <artifactId>data.schema.app</artifactId>
                <version>12.12.6</version>
                <classifier>app</classifier>
            </dependency>
        </dependencies>
    </dependencyManagement>

Beispiel/ Mockup:

Abrechnung={XXX/XXX/XXX/ZPROGRAM}

martins-1992 commented 7 months ago

Hatte gedacht, dass dies bereits funktioniert und angefangen eine Doku zu schreiben:

== Transitive Abhängigkeiten aktualisieren.

Wenn man beispielsweiße im Kundenprojekt eine Abhängigkeit zu SIS hat, ist es aufwändig das Data-Schema über die SIS-App zu aktualisieren. In diesem Fall müsste man das Data-Schema, die SIS-App, eventuell dessen Abhängigkeiten und das eigentliche Kundenprojekt aktualisieren.

Man kann aber auch das Data-Schema durch einen Release von dem Data-Schema und dem Kundenprojekt alleine durchführen, indem man dependencyManagement verwendet.

    <dependencies>
        <dependency>
            <groupId>com.minova</groupId>
            <artifactId>sis.app</artifactId>
            <version>12.9.16</version>
            <classifier>app</classifier>
        </dependency>
    </dependencies>
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>aero.minova</groupId>
                <artifactId>data.schema.app</artifactId>
                <version>12.12.6</version>
                <classifier>app</classifier>
            </dependency>
        </dependencies>
    </dependencyManagement>