pom.xml 14.1 KB
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <parent>
        <groupId>fr.tlse.irap.pt</groupId>
        <artifactId>pt</artifactId>
        <version>2.3.0</version>
    </parent>

    <modelVersion>4.0.0</modelVersion>
    <artifactId>client</artifactId>

    <name>PropagationTool Client</name>
    <description>PropagationTool Client Module</description>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

    <dependencies>
        <!-- PropTool dependencies -->
        <dependency>
            <groupId>com.oracle</groupId>
            <artifactId>javafx</artifactId>
            <version>${javafx.version}</version>
            <systemPath>${javafx.jar}</systemPath>
            <scope>system</scope>
        </dependency>
        <dependency>
            <groupId>fr.tlse.irap.pt</groupId>
            <artifactId>calendar</artifactId>
            <version>2.3.0</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>fr.tlse.irap.pt</groupId>
            <artifactId>common</artifactId>
            <version>2.3.0</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>fr.tlse.irap.pt</groupId>
            <artifactId>amda</artifactId>
            <version>2.3.0</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>fr.tlse.irap.pt</groupId>
            <artifactId>vespa</artifactId>
            <version>2.3.0</version>
            <scope>compile</scope>
        </dependency>

        <!-- Commons Exec -->
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-exec</artifactId>
            <version>1.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-io</artifactId>
            <version>1.3.2</version>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version>1.5.6</version>
        </dependency>
        <!--
        <dependency>
                <groupId>cglib</groupId>
                <artifactId>cglib</artifactId>
                <version>2.2.2</version>
        </dependency>
        -->
                
        <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>before-client</artifactId>
            <version>2.3.0</version>
        </dependency>
                
        <dependency>
            <groupId>uk.ac.starlink</groupId>
            <artifactId>jsamp</artifactId>
            <version>1.3.7</version>
        </dependency>
        <!--
        <dependency>
                <groupId>eu.hansolo.fx</groupId>
                <artifactId>charts</artifactId>
                <version>17.1.2</version>
        </dependency>
        -->
        <!--  Added for java 9 dev -->		
        <!-- 		<dependency> -->
        <!-- 	        <groupId>javax.xml.ws</groupId> -->
        <!-- 	        <artifactId>jaxws-api</artifactId> -->
        <!-- 	        <version>2.2.8</version> -->
        <!--     	</dependency> -->
        <!-- 		<dependency> -->
        <!-- 	        <groupId>com.sun.xml.ws</groupId> -->
        <!-- 	        <artifactId>jaxws-rt</artifactId> -->
        <!-- 	        <version>2.2.7</version> -->
        <!--     	</dependency> -->
        <!-- 		<dependency> -->
        <!-- 	        <groupId>javax.xml.bind</groupId> -->
        <!-- 	        <artifactId>jaxb-api</artifactId> -->
        <!-- 	        <version>2.2.4</version> -->
        <!--     	</dependency> -->
        <!-- 		<dependency> -->
        <!-- 		    <groupId>com.sun.xml.bind</groupId> -->
        <!-- 		    <artifactId>jaxb-impl</artifactId> -->
        <!-- 		    <version>2.2.6</version> -->
        <!-- 		</dependency> -->
        <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>fxyz3d</artifactId>
            <version>${project.version}</version>
        </dependency>
        
        <!-- tests -->
        <dependency>
            <groupId>org.testfx</groupId>
            <artifactId>testfx-core</artifactId>
            <version>4.0.17</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.testfx</groupId>
            <artifactId>testfx-junit</artifactId>
            <version>4.0.17</version>
            <scope>test</scope>
        </dependency> 
        <dependency>
            <groupId>org.assertj</groupId>
            <artifactId>assertj-core</artifactId>
            <version>3.13.2</version>
            <scope>test</scope>
        </dependency>       
    </dependencies>
	
    <!-- 	<dependencyManagement> -->
    <!-- 		<dependencies> -->
    <!-- 			<dependency> -->
    <!-- 				<groupId>com.xun.xml.ws</groupId> -->
    <!-- 				<artifactId>jaxws-rt</artifactId> -->
    <!-- 				<version>2.2.7</version> -->
    <!-- 			</dependency> -->
    <!-- 		</dependencies> -->
    <!-- 	</dependencyManagement> -->

    <build>
        <directory>target</directory>
        <outputDirectory>target/classes</outputDirectory>
        <testOutputDirectory>target/test-classes</testOutputDirectory>
        <sourceDirectory>src/main/java</sourceDirectory>
        <testSourceDirectory>src/test/java</testSourceDirectory>
        <resources>
            <resource>
                <filtering>false</filtering>
                <directory>${basedir}/src/main/java</directory>
                <includes>
                    <include>**/*.fxml</include>
                </includes>
            </resource>
            <resource>
                <filtering>false</filtering>
                <directory>${basedir}/src/main/resources</directory>
                <includes>
                    <include>**/*.*</include>
                </includes>
            </resource>
        </resources>
        <plugins>
            <plugin>
                <!-- copy all dependencies of your app to target folder -->
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-dependency-plugin</artifactId>
                <version>2.3</version>
                
                <executions>
                    <execution>
                        <id>copy-dependencies</id>
                        <phase>package</phase>
                        <configuration>
                            <overWriteReleases>false</overWriteReleases>
                            <overWriteSnapshots>false</overWriteSnapshots>
                            <overWriteIfNewer>true</overWriteIfNewer>
                            <includeScope>runtime</includeScope>
                        </configuration>
                        <goals>
                            <goal>copy-dependencies</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <version>${jar-plugin-version}</version>
                <configuration>
                    <archive>
                        <manifestEntries>
                            <Application-Name>Propagation Tool</Application-Name>
                            <Main-Class>fr.tlse.irap.EntryApp</Main-Class>
                            <implementation-version>1.0</implementation-version>
                            <Permissions>all-permissions</Permissions>
                        </manifestEntries>
                        <manifest>
                            <addClasspath>true</addClasspath>
                        </manifest>
                    </archive>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-antrun-plugin</artifactId>
                <version>1.7</version>
                <executions>
                    <execution>
                        <phase>package</phase>
                        <configuration>
                            <target xmlns:fx="javafx:com.sun.javafx.tools.ant">
                                <!-- define the deploy ANT task -->
                                <taskdef resource="com/sun/javafx/tools/ant/antlib.xml"
                                         uri="javafx:com.sun.javafx.tools.ant" classpath="${ant-javafx.jar}" />
                                <!-- define the JarSing ANT task -->
                                <taskdef name="jfxsignjar" classname="com.sun.javafx.tools.ant.FXSignJarTask"
                                         classpathref="maven.plugin.classpath" />
                                <fx:deploy width="1230" height="765" 
                                           outdir="${project.build.directory}/deploy" 
                                           codebase="${pt-url}/${pt-warname}/deploy"
                                           outfile="${project.build.finalName}"
                                           nativeBundles="none" verbose="true" updatemode="always">
                                    <!-- 									<info title="${project.name}" description="Propagation web tool" -->
                                    <fx:info title="${pt-appname}" 
                                             description="Propagation web tool" vendor="Akkodis for IRAP">
                                        <fx:icon href="${pt-url}/${pt-warname}/images/favicon.png" kind="shortcut" width="32" height="32"/> 
                                    </fx:info> 
                                    <fx:preferences shortcut="true" menu="true" install="true"/>
                                    <!-- set the main class of your application -->
                                    <application name="${project.name}" mainClass="fr.tlse.irap.EntryApp">
                                        <argument>${pt-url}</argument>
                                        <argument>${pt-warname}</argument>
                                        <argument>${pt-version}</argument>
                                        <argument>${pt-release-date}</argument>
                                    </application>
                                    <resources>
                                        <fileset dir="${project.build.directory}" includes="*.jar" />
                                        <fileset dir="${project.build.directory}/dependency" includes="*.jar *.jnpl" excludes="*sources.jar *javadoc.jar spring* aopalliance*.jar commons-logging*.jar"/>
                                    </resources>
                                    <!-- set your jvm args -->
                                    <platform javafx="${javafx.version}+" j2se="1.7+">
                                        <jvmarg value="-Xms512m" />
                                        <jvmarg value="-Xmx1024m" />
                                        <jvmarg value="-XX:+IgnoreUnrecognizedVMOptions" />
                                        <jvmarg value="--add-modules=java.xml.ws" /> 
                                        <jvmarg value="--add-exports=java.base/java.lang=ALL-UNNAMED" />
                                        <jvmarg value="--add-exports=java.desktop/sun.awt=ALL-UNNAMED" />
                                        <jvmarg value="--add-exports=java.desktop/sun.java2d=ALL-UNNAMED" />
                                        <jvmarg value="--add-exports=java.base/com.sun=ALL-UNNAMED" />
                                        <jvmarg value="--add-exports=java.ws/com.sun=ALL-UNNAMED" />
                                    </platform>
                                    <fx:permissions elevated="true" />
                                </fx:deploy>
                                <!-- A commenter pour des jar non sign�s -->
                                <jfxsignjar destdir="${project.build.directory}/deploy"
                                            keystore="${project.basedir}/akkodistls.p12" storepass="akkodistls"
                                            alias="akkodistls" keypass="akkodistls" verbose="true">
                                    <fileset dir="${project.build.directory}/deploy"
                                             includes="*.jar">
                                    </fileset>
                                </jfxsignjar>
                                <!-- A commenter - End -->
                            </target>
                        </configuration>
                        <goals>
                            <goal>run</goal>
                        </goals>
                    </execution>
                </executions>
                <dependencies>
                    <dependency>
                        <groupId>com.oracle</groupId>
                        <artifactId>ant-javafx</artifactId>
                        <version>${javafx.version}</version>
                        <systemPath>${ant-javafx.jar}</systemPath>
                        <scope>system</scope>
                    </dependency>
                </dependencies>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.5.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version>2.19.1</version>
                    <configuration>
                        <trimStackTrace>true</trimStackTrace>
                    </configuration>
                </plugin>
        </plugins>
        <finalName>${pt-name}</finalName>
    </build>

</project>