| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to You 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 |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| 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> |
| |
| <parent> |
| <groupId>org.apache</groupId> |
| <artifactId>apache</artifactId> |
| <version>18</version> |
| </parent> |
| |
| <groupId>org.apache.flex.flexjs</groupId> |
| <artifactId>flexjs-parent</artifactId> |
| <version>0.7.0-SNAPSHOT</version> |
| <packaging>pom</packaging> |
| |
| <name>Apache Flex - FlexJS</name> |
| <description>The Apache Flex FlexJS Project</description> |
| |
| <scm> |
| <connection>scm:git://git.apache.org/flex-falcon.git</connection> |
| <developerConnection>scm:git://git.apache.org/flex-falcon.git</developerConnection> |
| <url>https://github.com/apache/flex-falcon</url> |
| </scm> |
| |
| <properties> |
| <java.version>1.6</java.version> |
| <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> |
| <project.reporting.outputencoding>UTF-8</project.reporting.outputencoding> |
| <maven.version>3.3.1</maven.version> |
| |
| <flex.version>4.15.0</flex.version> |
| <flash.version>20.0</flash.version> |
| <air.version>20.0</air.version> |
| |
| <compiler-build-tools.version>1.0.0-SNAPSHOT</compiler-build-tools.version> |
| <compiler-jburg-types.version>1.0.0-SNAPSHOT</compiler-jburg-types.version> |
| |
| <!-- URL of the ASF SonarQube server --> |
| <sonar.host.url>https://analysis.apache.org/</sonar.host.url> |
| <!-- Tell sonar where the coverage reports are located --> |
| <sonar.jacoco.reportPath>${project.build.directory}/coverage-reports/jacoco-ut.exec</sonar.jacoco.reportPath> |
| <sonar.jacoco.itReportPath>${project.build.directory}/coverage-reports/jacoco-it.exec</sonar.jacoco.itReportPath> |
| <!-- Exclude all generated code --> |
| <sonar.exclusions>file:**/generated-sources/**</sonar.exclusions> |
| </properties> |
| |
| <!-- Only configure the site distribution as the rest is handled by the apache parent --> |
| <distributionManagement> |
| <site> |
| <id>website</id> |
| <!-- TODO: Set this to the correct url --> |
| <url>scp://www.mycompany.com/www/docs/project/</url> |
| </site> |
| </distributionManagement> |
| |
| <issueManagement> |
| <system>Jira</system> |
| <url>https://issues.apache.org/jira/browse/FLEX</url> |
| </issueManagement> |
| |
| <mailingLists> |
| <mailingList> |
| <name>Apache Flex User List</name> |
| <subscribe>users-subscribe@flex.apache.org</subscribe> |
| <unsubscribe>users-unsubscribe@flex.apache.org</unsubscribe> |
| <post>users@flex.apache.org</post> |
| <archive>http://mail-archives.apache.org/mod_mbox/flex-users/</archive> |
| </mailingList> |
| <mailingList> |
| <name>Apache Flex Developer List</name> |
| <subscribe>dev-subscribe@flex.apache.org</subscribe> |
| <unsubscribe>dev-unsubscribe@flex.apache.org</unsubscribe> |
| <post>dev@flex.apache.org</post> |
| <archive>http://mail-archives.apache.org/mod_mbox/flex-dev/</archive> |
| </mailingList> |
| </mailingLists> |
| |
| <!-- |
| As the compiler needs artifacts that are part of this project, the build |
| will fail, if the utility artifacts compiler-build-tools or compiler-jburg-types |
| haven't been built. We therefore have a utils profile, that builds these |
| prerequisites. After one build with "-P utils" has been built, the default |
| build should be able to do it's job. |
| --> |
| <profiles> |
| <profile> |
| <id>utils</id> |
| <properties> |
| <active-profile>utils</active-profile> |
| </properties> |
| <modules> |
| <module>compiler-build-tools</module> |
| <module>compiler-jburg-types</module> |
| </modules> |
| </profile> |
| |
| <profile> |
| <id>compiler</id> |
| <properties> |
| <active-profile>compiler</active-profile> |
| </properties> |
| <modules> |
| <module>compiler</module> |
| <module>compiler-jx</module> |
| <module>compiler-test-utils</module> |
| <module>debugger</module> |
| <module>flex-compiler-oem</module> |
| <module>flexjs-ant-tasks</module> |
| <module>flexjs-maven-plugin</module> |
| </modules> |
| </profile> |
| |
| <profile> |
| <id>externs</id> |
| <properties> |
| <active-profile>externs</active-profile> |
| </properties> |
| <modules> |
| <module>externs</module> |
| </modules> |
| </profile> |
| </profiles> |
| |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-enforcer-plugin</artifactId> |
| <version>1.4.1</version> |
| <executions> |
| <execution> |
| <id>enforce at least one profile activation</id> |
| <goals> |
| <goal>enforce</goal> |
| </goals> |
| <configuration> |
| <rules> |
| <!-- |
| The profiles are only available if they are defined in the |
| current pom. So we would have to define all profiles in each |
| child pom. Using a property defined in the profiles makes this |
| property available in all children, so we use this to check |
| if a profile was selected. |
| --> |
| <requireProperty> |
| <property>active-profile</property> |
| <message>You must select one of the profiles 'utils', 'compiler' or 'externs' using the '-P{profilename}' commandline option</message> |
| </requireProperty> |
| </rules> |
| <fail>true</fail> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-compiler-plugin</artifactId> |
| <version>3.5.1</version> |
| <configuration> |
| <source>${java.version}</source> |
| <target>${java.version}</target> |
| </configuration> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.jacoco</groupId> |
| <artifactId>jacoco-maven-plugin</artifactId> |
| <version>0.7.6.201602180812</version> |
| <executions> |
| <!-- |
| Prepares the property pointing to the JaCoCo runtime agent which |
| is passed as VM argument when Maven the Surefire plugin is executed. |
| --> |
| <execution> |
| <id>pre-unit-test</id> |
| <goals> |
| <goal>prepare-agent</goal> |
| </goals> |
| <configuration> |
| <!-- Sets the path to the file which contains the execution data. --> |
| <destFile>${project.build.directory}/coverage-reports/jacoco-ut.exec</destFile> |
| <!-- |
| Sets the name of the property containing the settings |
| for JaCoCo runtime agent. |
| --> |
| <propertyName>surefireArgLine</propertyName> |
| </configuration> |
| </execution> |
| <!-- |
| Ensures that the code coverage report for unit tests is created after |
| unit tests have been run. |
| --> |
| <execution> |
| <id>post-unit-test</id> |
| <phase>test</phase> |
| <goals> |
| <goal>report</goal> |
| </goals> |
| <configuration> |
| <!-- Sets the path to the file which contains the execution data. --> |
| <dataFile>${project.build.directory}/coverage-reports/jacoco-ut.exec</dataFile> |
| <!-- Sets the output directory for the code coverage report. --> |
| <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory> |
| </configuration> |
| </execution> |
| <!-- |
| Prepares the property pointing to the JaCoCo runtime agent which |
| is passed as VM argument when Maven the Failsafe plugin is executed. |
| --> |
| <execution> |
| <id>pre-integration-test</id> |
| <phase>pre-integration-test</phase> |
| <goals> |
| <goal>prepare-agent</goal> |
| </goals> |
| <configuration> |
| <!-- Sets the path to the file which contains the execution data. --> |
| <destFile>${project.build.directory}/coverage-reports/jacoco-it.exec</destFile> |
| <!-- |
| Sets the name of the property containing the settings |
| for JaCoCo runtime agent. |
| --> |
| <propertyName>failsafeArgLine</propertyName> |
| </configuration> |
| </execution> |
| <!-- |
| Ensures that the code coverage report for integration tests after |
| integration tests have been run. |
| --> |
| <execution> |
| <id>post-integration-test</id> |
| <phase>post-integration-test</phase> |
| <goals> |
| <goal>report</goal> |
| </goals> |
| <configuration> |
| <!-- Sets the path to the file which contains the execution data. --> |
| <dataFile>${project.build.directory}/coverage-reports/jacoco-it.exec</dataFile> |
| <!-- Sets the output directory for the code coverage report. --> |
| <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <!-- Make the surefire execute all unit-tests --> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-surefire-plugin</artifactId> |
| <version>2.19</version> |
| <configuration> |
| <argLine>${surefireArgLine}</argLine> |
| <systemPropertyVariables> |
| <buildType>Maven</buildType> |
| <flexVersion>${flex.version}</flexVersion> |
| <flashVersion>${flash.version}</flashVersion> |
| <airVersion>${air.version}</airVersion> |
| <mavenLocalRepoDir>${settings.localRepository}</mavenLocalRepoDir> |
| </systemPropertyVariables> |
| <!-- |
| Currently some tests need this to be disabled, |
| but actually this is a bug. For now I'll disable |
| them to avoid problems during the maven migration. |
| After this is finished, we should defnitely fix |
| the tests so assertions can be enabled. |
| --> |
| <enableAssertions>false</enableAssertions> |
| </configuration> |
| </plugin> |
| |
| <!-- Make the failsafe execute all integration-tests --> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-failsafe-plugin</artifactId> |
| <version>2.18.1</version> |
| <executions> |
| <execution> |
| <goals> |
| <goal>integration-test</goal> |
| <goal>verify</goal> |
| </goals> |
| </execution> |
| </executions> |
| <configuration> |
| <argLine>${failsafeArgLine}</argLine> |
| <systemPropertyVariables> |
| <buildType>Maven</buildType> |
| <flexVersion>${flex.version}</flexVersion> |
| <flashVersion>${flash.version}</flashVersion> |
| <airVersion>${air.version}</airVersion> |
| <mavenLocalRepoDir>${settings.localRepository}</mavenLocalRepoDir> |
| <FLASHPLAYER_DEBUGGER>${env.FLASHPLAYER_DEBUGGER}</FLASHPLAYER_DEBUGGER> |
| </systemPropertyVariables> |
| </configuration> |
| </plugin> |
| |
| <!-- Plugin to detect problems with JDK incompatibilities --> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>animal-sniffer-maven-plugin</artifactId> |
| <version>1.15</version> |
| <executions> |
| <execution> |
| <id>check-jdk-1.6</id> |
| <phase>test</phase> |
| <goals> |
| <goal>check</goal> |
| </goals> |
| </execution> |
| </executions> |
| <configuration> |
| <signature> |
| <groupId>org.codehaus.mojo.signature</groupId> |
| <artifactId>java16</artifactId> |
| <version>1.1</version> |
| </signature> |
| </configuration> |
| </plugin> |
| |
| <!-- Configure the assembly --> |
| <!--plugin> |
| <artifactId>maven-assembly-plugin</artifactId> |
| <version>2.6</version> |
| <executions> |
| <execution> |
| <id>assemble-sources-releases</id> |
| <phase>package</phase> |
| <goals> |
| <goal>single</goal> |
| </goals> |
| </execution> |
| </executions> |
| <configuration> |
| <descriptors> |
| <descriptor>src/assembly/binary-distribution-zip.xml</descriptor> |
| <descriptor>src/assembly/binary-distribution-gz.xml</descriptor> |
| <descriptor>src/assembly/source-distribution-zip.xml</descriptor> |
| <descriptor>src/assembly/source-distribution-gz.xml</descriptor> |
| </descriptors> |
| </configuration> |
| </plugin--> |
| |
| <!-- Configure the Site generation --> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-site-plugin</artifactId> |
| <version>3.4</version> |
| <configuration> |
| <generateReports>true</generateReports> |
| <generateSitemap>true</generateSitemap> |
| <relativizeDecorationLinks>false</relativizeDecorationLinks> |
| <locales>en</locales> |
| <inputEncoding>${project.build.sourceEncoding}</inputEncoding> |
| <outputEncoding>${project.reporting.outputencoding}</outputEncoding> |
| </configuration> |
| <dependencies> |
| <dependency> |
| <groupId>org.asciidoctor</groupId> |
| <artifactId>asciidoctor-maven-plugin</artifactId> |
| <version>1.5.3</version> |
| </dependency> |
| </dependencies> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.asciidoctor</groupId> |
| <artifactId>asciidoctor-maven-plugin</artifactId> |
| <version>1.5.3</version> |
| <dependencies> |
| <dependency> |
| <groupId>org.asciidoctor</groupId> |
| <artifactId>asciidoctorj-diagram</artifactId> |
| <version>1.3.1</version> |
| </dependency> |
| </dependencies> |
| <configuration> |
| <requires> |
| <require>asciidoctor-diagram</require> |
| </requires> |
| <attributes> |
| <!-- Example below shows how to specify in this pom instead of System's PATH, the location of dot command of Graphviz, required by PlantUML libraries --> |
| <!-- Windows: |
| <graphvizdot>C:\Program Files (x86)\Graphviz2.38\bin\dot.exe</graphvizdot> |
| --> |
| <!-- *nix : |
| <graphvizdot>/usr/local/bin/dot</graphvizdot> |
| --> |
| </attributes> |
| </configuration> |
| <!--executions> |
| <execution> |
| <id>generate-html-doc</id> |
| <phase>generate-resources</phase> |
| <goals> |
| <goal>process-asciidoc</goal> |
| </goals> |
| <configuration> |
| <backend>html5</backend> |
| <attributes> |
| <imagesdir>./images</imagesdir> |
| <toc>left</toc> |
| <icons>font</icons> |
| <sectanchors>true</sectanchors> |
| <idprefix/> |
| <idseparator>-</idseparator> |
| </attributes> |
| </configuration> |
| </execution> |
| </executions--> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.sonarsource.scanner.maven</groupId> |
| <artifactId>sonar-maven-plugin</artifactId> |
| <version>3.0.2</version> |
| </plugin> |
| </plugins> |
| </build> |
| |
| <reporting> |
| <plugins> |
| <!-- Process the asciidoctor resources in the src/site/asciidoc directory --> |
| <plugin> |
| <groupId>org.asciidoctor</groupId> |
| <artifactId>asciidoctor-maven-plugin</artifactId> |
| <version>1.5.3</version> |
| <configuration> |
| <attributes> |
| <icons>font</icons> |
| <source-highlighter>coderay</source-highlighter> |
| <coderay-css>style</coderay-css> |
| <toclevels>2</toclevels> |
| </attributes> |
| </configuration> |
| </plugin> |
| |
| <!-- Generates a changelog report from GIT commits --> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-changelog-plugin</artifactId> |
| <version>2.3</version> |
| <configuration> |
| <!-- Automatically link Jire issues --> |
| <issueLinkUrl>https://issues.apache.org/jira/browse/%ISSUE%</issueLinkUrl> |
| </configuration> |
| </plugin> |
| |
| <!-- Generates a report with the details of the unit- and integrationtests --> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-surefire-report-plugin</artifactId> |
| <version>2.19.1</version> |
| </plugin> |
| |
| <!-- Generates a report with the test coverages --> |
| <plugin> |
| <groupId>org.jacoco</groupId> |
| <artifactId>jacoco-maven-plugin</artifactId> |
| <version>0.7.6.201602180812</version> |
| </plugin> |
| |
| <!-- Generates a report with the SonarQube analysis reports --> |
| <plugin> |
| <groupId>org.codehaus.sonar-plugins</groupId> |
| <artifactId>maven-report</artifactId> |
| <version>0.1</version> |
| </plugin> |
| |
| <!-- Generate the JavaDoc API documentation --> |
| <!--plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-javadoc-plugin</artifactId> |
| <version>2.10.3</version> |
| </plugin--> |
| </plugins> |
| </reporting> |
| |
| <repositories> |
| <repository> |
| <id>apache-release</id> |
| <url>https://repository.apache.org/content/repositories/releases</url> |
| <releases> |
| <enabled>true</enabled> |
| </releases> |
| <snapshots> |
| <enabled>false</enabled> |
| </snapshots> |
| </repository> |
| <repository> |
| <id>apache-snapshots</id> |
| <url>https://repository.apache.org/content/repositories/snapshots</url> |
| <releases> |
| <enabled>false</enabled> |
| </releases> |
| <snapshots> |
| <enabled>true</enabled> |
| </snapshots> |
| </repository> |
| </repositories> |
| |
| <pluginRepositories> |
| <pluginRepository> |
| <id>apache-plugins-release</id> |
| <url>https://repository.apache.org/content/repositories/releases</url> |
| <releases> |
| <enabled>true</enabled> |
| </releases> |
| <snapshots> |
| <enabled>false</enabled> |
| </snapshots> |
| </pluginRepository> |
| <pluginRepository> |
| <id>apache-plugins-snapshots</id> |
| <url>https://repository.apache.org/content/repositories/snapshots</url> |
| <releases> |
| <enabled>false</enabled> |
| </releases> |
| <snapshots> |
| <enabled>true</enabled> |
| </snapshots> |
| </pluginRepository> |
| </pluginRepositories> |
| |
| </project> |