diff options
author | Simon Rettberg | 2015-07-09 19:21:05 +0200 |
---|---|---|
committer | Simon Rettberg | 2015-07-09 19:21:05 +0200 |
commit | 9445d4d2e12e53a382e9af144e5fb9e6f5df2a95 (patch) | |
tree | f4b6a78e92e9b2ceed9abf3bd71db0623bd61ba3 /dozentenmodul/pom.xml | |
parent | [client] Moved functions from ImageListWindowLayout to ImageListWindow and re... (diff) | |
download | tutor-module-9445d4d2e12e53a382e9af144e5fb9e6f5df2a95.tar.gz tutor-module-9445d4d2e12e53a382e9af144e5fb9e6f5df2a95.tar.xz tutor-module-9445d4d2e12e53a382e9af144e5fb9e6f5df2a95.zip |
[client] pom.xml: Build multiplatform .jar by including all swt versions
This makes maven3 mandatory!
Diffstat (limited to 'dozentenmodul/pom.xml')
-rw-r--r-- | dozentenmodul/pom.xml | 201 |
1 files changed, 125 insertions, 76 deletions
diff --git a/dozentenmodul/pom.xml b/dozentenmodul/pom.xml index 807503c3..7ddd55ad 100644 --- a/dozentenmodul/pom.xml +++ b/dozentenmodul/pom.xml @@ -12,7 +12,10 @@ <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> + <main.class>org.openslx.dozmod.App</main.class> <maven.build.timestamp.format>yy.M.d.Hmm</maven.build.timestamp.format> + <swt.version>4.4</swt.version> + <lib.directory>lib</lib.directory> </properties> <repositories> @@ -51,76 +54,77 @@ </configuration> </plugin> <plugin> - <artifactId>maven-assembly-plugin</artifactId> + <inherited>true</inherited> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-enforcer-plugin</artifactId> + <version>1.3.1</version> <executions> <execution> - <phase>package</phase> + <id>enforce-maven-3</id> <goals> - <goal>single</goal> + <goal>enforce</goal> </goals> + <configuration> + <rules> + <requireMavenVersion> + <version>3.0.0</version> + </requireMavenVersion> + </rules> + <fail>true</fail> + </configuration> </execution> </executions> - <configuration> - <archive> - <manifest> - <mainClass>org.openslx.dozmod.App</mainClass> - </manifest> - <manifestEntries> - <Version-Timestamp>${maven.build.timestamp}</Version-Timestamp> - </manifestEntries> - </archive> - <descriptorRefs> - <descriptorRef>jar-with-dependencies</descriptorRef> - </descriptorRefs> - </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-shade-plugin</artifactId> + <artifactId>maven-dependency-plugin</artifactId> + <version>2.10</version> <executions> <execution> - <phase>package</phase> + <id>copy</id> + <phase>prepare-package</phase> <goals> - <goal>shade</goal> + <goal>unpack</goal> </goals> <configuration> - <filters> - <filter> - <artifact>*:*</artifact> - <excludes> - <exclude>META-INF/*.SF</exclude> - <exclude>META-INF/*.DSA</exclude> - <exclude>META-INF/*.RSA</exclude> - </excludes> - </filter> - <filter> - <artifact>log4j:*</artifact> - <includes> - <include>**</include> - </includes> - </filter> - <filter> - <artifact>commons-logging:*</artifact> - <includes> - <include>**</include> - </includes> - </filter> - </filters> - <minimizeJar>true</minimizeJar> - <transformers> - <transformer - implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> - <mainClass>org.openslx.dozmod.App</mainClass> - <manifestEntries> - <Version-Timestamp>${maven.build.timestamp}</Version-Timestamp> - </manifestEntries> - </transformer> - </transformers> + <excludes>META-INF/*.SF,META-INF/*.DSA,META-INF/*.RSA</excludes> + <outputDirectory>${project.build.outputDirectory}</outputDirectory> + <overWriteIfNewer>true</overWriteIfNewer> + <artifactItems> + <artifactItem> + <groupId>com.janprach.multiplatform-swt</groupId> + <artifactId>multiplatform-swt-loader</artifactId> + <version>4.4</version> + <classifier>multiplatform</classifier> + </artifactItem> + </artifactItems> </configuration> </execution> </executions> </plugin> + <plugin> + <groupId>org.springframework.boot</groupId> + <artifactId>spring-boot-maven-plugin</artifactId> + <version>1.2.5.RELEASE</version> + <configuration> + <mainClass>${main.class}</mainClass> + <excludes> + <exclude> + <groupId>org.eclipse.swt</groupId> + <artifactId>${swt.artifactId}</artifactId> + </exclude> + </excludes> + </configuration> + <executions> + <execution> + <goals> + <goal>repackage</goal> + </goals> + </execution> + </executions> + </plugin> </plugins> + <resources> <resource> <directory>src/main/resources</directory> @@ -135,71 +139,115 @@ </includes> </resource> </resources> + <pluginManagement> + <plugins> + <!--This plugin's configuration is used to store Eclipse m2e settings + only. It has no influence on the Maven build itself. --> + <plugin> + <groupId>org.eclipse.m2e</groupId> + <artifactId>lifecycle-mapping</artifactId> + <version>1.0.0</version> + <configuration> + <lifecycleMappingMetadata> + <pluginExecutions> + <pluginExecution> + <pluginExecutionFilter> + <groupId> + org.apache.maven.plugins + </groupId> + <artifactId> + maven-dependency-plugin + </artifactId> + <versionRange> + [2.10,) + </versionRange> + <goals> + <goal>unpack</goal> + </goals> + </pluginExecutionFilter> + <action> + <ignore></ignore> + </action> + </pluginExecution> + </pluginExecutions> + </lifecycleMappingMetadata> + </configuration> + </plugin> + </plugins> + </pluginManagement> </build> <profiles> <profile> - <id>mac</id> + <id>linux32</id> <activation> <os> - <name>mac os x</name> + <family>linux</family> + <arch>i386</arch> </os> </activation> <properties> - <swt.groupId>org.eclipse.swt.carbon</swt.groupId> - <swt.artifactId>macosx</swt.artifactId> + <swt.artifactId>org.eclipse.swt.gtk.linux.x86</swt.artifactId> </properties> </profile> <profile> - <id>windows_32</id> + <id>linux64</id> <activation> <os> - <family>windows</family> + <family>linux</family> + <arch>amd64</arch> + </os> + </activation> + <properties> + <swt.artifactId>org.eclipse.swt.gtk.linux.x86_64</swt.artifactId> + </properties> + </profile> + <profile> + <id>macosx32</id> + <activation> + <os> + <family>macosx</family> <arch>i386</arch> </os> </activation> <properties> - <swt.groupId>org.eclipse.swt</swt.groupId> - <swt.artifactId>org.eclipse.swt.win32.win32.x86</swt.artifactId> + <swt.artifactId>org.eclipse.swt.cocoa.macosx</swt.artifactId> </properties> </profile> <profile> - <id>windows_64</id> + <id>macosx64</id> <activation> <os> - <family>windows</family> - <arch>amd64</arch> + <family>macosx</family> + <arch>x86_64</arch> </os> </activation> <properties> - <swt.groupId>org.eclipse.swt</swt.groupId> - <swt.artifactId>org.eclipse.swt.win32.win32.x86_64</swt.artifactId> + <swt.artifactId>org.eclipse.swt.cocoa.macosx.x86_64</swt.artifactId> </properties> </profile> <profile> - <id>linux_64</id> + <id>win32</id> <activation> <os> - <name>linux</name> - <arch>amd64</arch> + <family>windows</family> + <arch>x86</arch> </os> </activation> <properties> - <swt.groupId>org.eclipse.swt</swt.groupId> - <swt.artifactId>org.eclipse.swt.gtk.linux.x86_64</swt.artifactId> + <swt.artifactId>org.eclipse.swt.win32.win32.x86</swt.artifactId> </properties> </profile> <profile> - <id>linux_32</id> + <id>win64</id> <activation> <os> - <name>linux</name> - <arch>i386</arch> + <family>windows</family> + <arch>amd64</arch> </os> </activation> <properties> - <swt.groupId>org.eclipse.swt.org.eclipse.swt.gtk.linux.x86.4.3.swt</swt.groupId> - <swt.artifactId>org.eclipse.swt.gtk.linux.x86</swt.artifactId> + <swt.artifactId>org.eclipse.swt.win32.win32.x86_64</swt.artifactId> </properties> </profile> </profiles> @@ -218,9 +266,10 @@ <scope>compile</scope> </dependency> <dependency> - <groupId>${swt.groupId}</groupId> + <groupId>org.eclipse.swt</groupId> <artifactId>${swt.artifactId}</artifactId> - <version>4.4</version> + <version>${swt.version}</version> + <scope>provided</scope> </dependency> <dependency> <groupId>log4j</groupId> |