structure
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
<groupId>org.kevoree.mwg.plugins</groupId>
<artifactId>structure</artifactId>
<version>11</version>
</dependency><?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright 2017 The MWG Authors. All rights reserved.
<p>
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
<p>
http://www.apache.org/licenses/LICENSE-2.0
<p>
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<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">
<modelVersion>4.0.0</modelVersion>
<groupId>org.kevoree.mwg.plugins</groupId>
<artifactId>structure</artifactId>
<version>11</version>
<name>mwg :: Plugins :: Structure</name>
<parent>
<artifactId>mwg</artifactId>
<groupId>org.kevoree.mwg</groupId>
<version>11</version>
<relativePath>../..</relativePath>
</parent>
<dependencies>
<dependency>
<groupId>org.kevoree.mwg</groupId>
<artifactId>core</artifactId>
<version>${project.parent.version}</version>
</dependency>
<!-- Test -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
</dependencies>
<properties>
<js.name>mwg.structure</js.name>
<header.path>${basedir}/../../HEADER</header.path>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<executions>
<execution>
<goals>
<goal>test-jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.kevoree.modeling.j2ts</groupId>
<artifactId>mavenplugin</artifactId>
<version>${java2typescript.plugin.version}</version>
<executions>
<execution>
<id>ts-compile-structure</id>
<phase>compile</phase>
<goals>
<goal>java2ts</goal>
</goals>
<configuration>
<name>${js.name}</name>
<moduleImports>
<moduleImport>mwg.d.ts</moduleImport>
</moduleImports>
<source>${basedir}/src/main/java</source>
<target>${basedir}/target/generated-sources</target>
</configuration>
</execution>
<execution>
<id>ts-compile-test-structure</id>
<phase>test-compile</phase>
<goals>
<goal>java2ts</goal>
</goals>
<configuration>
<name>test</name>
<copyJRE>false</copyJRE>
<copyJunit>true</copyJunit>
<moduleImports>
<moduleImport>../generated-sources/${js.name}.ts</moduleImport>
</moduleImports>
<source>${basedir}/src/test/java</source>
<target>${basedir}/target/generated-test-sources</target>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.8</version>
<executions>
<execution>
<id>compile</id>
<phase>compile</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<echo message="Compile Java to TypeScript" />
<copy file="${basedir}/../../core/target/classes-js/mwg.d.ts" todir="${basedir}/target/generated-sources/" />
<copy file="${basedir}/../../share/package.json" todir="${basedir}/target" />
<exec executable="npm" dir="${basedir}/target" failonerror="true">
<arg value="install" />
</exec>
<echo message="Compile TypeScript to JavaScript" />
<exec executable="${basedir}/target/node_modules/typescript/bin/tsc" dir="${basedir}/target/generated-sources/" failonerror="true">
<arg value="-d" />
<arg value="--sourceMap" />
<arg value="--target" />
<arg value="es5" />
<arg value="${basedir}/target/generated-sources/${js.name}.ts" />
<arg value="--out" />
<arg value="${js.name}.js" />
</exec>
<copy file="${basedir}/target/generated-sources/${js.name}.ts" todir="${basedir}/target/classes-js" />
<copy file="${basedir}/target/generated-sources/${js.name}.d.ts" todir="${basedir}/target/classes-js" />
<copy file="${basedir}/target/generated-sources/${js.name}.js" todir="${basedir}/target/classes-js" />
<copy file="${basedir}/target/generated-sources/${js.name}.js.map" todir="${basedir}/target/classes-js" />
<echo message="Minifying JavaScript" />
<java jar="${basedir}/../../share/compiler.jar" fork="true" failonerror="true">
<arg value="--js" />
<arg value="${basedir}/target/classes-js/${js.name}.js" />
<arg value="--js_output_file" />
<arg value="${basedir}/target/classes-js/${js.name}.min.js" />
</java>
</target>
</configuration>
</execution>
<execution>
<id>compile-test</id>
<phase>test-compile</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<echo message="Compile tests TypeScript to JavaScript" />
<exec executable="${basedir}/target/node_modules/typescript/bin/tsc" failonerror="true">
<arg value="--target" />
<arg value="es5" />
<arg value="${basedir}/target/generated-test-sources/test.ts" />
<arg value="--out" />
<arg value="${basedir}/target/test-classes/mwg.test.js" />
</exec>
<concat destfile="${basedir}/target/test-classes/test.all.js" force="no">
<filelist dir="${basedir}/../../core/target/classes-js" files="mwg.js" />
<filelist dir="${basedir}/../../share/" files="spacer.js" />
<filelist dir="${basedir}/target/test-classes" files="mwg.test.js" />
<filelist dir="${basedir}/../../share/" files="spacer.js" />
<filelist dir="${basedir}/target/generated-test-sources/" files="testsRunner.js" />
</concat>
<concat destfile="${basedir}/target/test-classes/test.all.dev.js" force="no">
<filelist dir="${basedir}/../../core/target/classes-js" files="mwg.js" />
<filelist dir="${basedir}/../../share/" files="spacer.js" />
<filelist dir="${basedir}/target/test-classes" files="mwg.test.js" />
<filelist dir="${basedir}/../../share/" files="spacer.js" />
<filelist dir="${basedir}/target/generated-test-sources/" files="testsRunnerDev.js" />
</concat>
<copy file="${basedir}/../../share/test.js" todir="${basedir}/target" />
</target>
</configuration>
</execution>
<execution>
<id>run-test</id>
<phase>test</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<echo message="Execute JS tests" />
<exec executable="node" dir="${basedir}/target" failonerror="true">
<arg value="test.js" />
</exec>
</target>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptors>
<descriptor>${basedir}/../../share/zip.xml</descriptor>
</descriptors>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>