Swt-jars für Windows und Linux

Hallo zusammen

Da die swt-jars nirgendwo als dependency verfügbar sind hab ich die selbst zu meinem repo(Artifactory) hinzugefügt. Das Problem ist nur das das ganze platformabhängig ist.

Wie schafft man denn dass je nach Platform die riechtige dependency angezogen wird, ohne das pom jeweils anzupassen.

Danke und Grüsse :wink:

Du möchtest also einen Linux Build und einen Windows Build separat voneinander in Maven anstoßen können? Da fallen mir im ersten Wurf Profile ein.

http://maven.apache.org/guides/introduction/introduction-to-profiles.html

Darf ich fragen warum gerade SWT als GUI-Framework?

Wir nutzen SWT nur im Zusammenhang mit Eclipse RCP und das kann man mittels Tycho-Plugin mit Maven bauen. In der pom.xml kann ich dann sämtliche Target-Platformen angeben, das sieht dann so aus:

    <plugin>
                <groupId>org.eclipse.tycho</groupId>
                <artifactId>target-platform-configuration</artifactId>
                <version>${tycho-version}</version>
                <configuration>
                    <resolver>p2</resolver>
                    <environments>
                        <environment>
                            <os>win32</os>
                            <ws>win32</ws>
                            <arch>x86_64</arch>
                        </environment>
                    </environments>
                </configuration>
            </plugin>

@Inv_zim

Ja - Mein Desktop ist XFCE und mein Lappy ist Windows :wink:
Es sollte auf beiden gehen.

Bei den Profilen muss man an einer stelle ja doch noch sagen welches man ausführen soll.
Besser als jeweils das pom ändern zu7 müssen.

Aber gibt es nicht ne völlige automatische Möglichkeit?

@Greta

Tyco ist ja speziell für rcp gebaut worden.
Mein Usecase ist simpler
Aber auch bei Tyco muss man die Zielplatform angeben - das will ich ja gerade vermeiden.

Du kannst ja in der IDE normalerweise selbstdefinierte Maven-Aufrufe anlegen. Diese nutzen dann eben das jeweilige Profil und werden nur einmalig angelegt. So muss die pom.xml nicht geändert werden.

Ein automatisches Verfahren ist mir nicht bekannt.

Ich würde mir einfach ein Shellscript anlegen, was nacheinander zwei Maven Jobs mit zwei Profilen startet.