Modified: uima/build/trunk/parent-pom/pom.xml URL: http://svn.apache.org/viewvc/uima/build/trunk/parent-pom/pom.xml?rev=1842125&r1=1842124&r2=1842125&view=diff ============================================================================== --- uima/build/trunk/parent-pom/pom.xml (original) +++ uima/build/trunk/parent-pom/pom.xml Thu Sep 27 17:20:58 2018 @@ -1,2864 +1,2864 @@ -<?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. ---> - -<!-- - This is the common UIMA parent pom. - It contains the project-wide defaults: - - The parent of this POM is the official common Apache POM - - Defines repositories for - Snapshots - at Apache - used during development, and for docbook olinks - Eclipse - where the good poms are - Central - adds default check-the checksums - - PluginManagement defaults: - Java 1.6 as the base - Javadoc at 1.6 too - Jar Manifest entries, including the build-time - AntRun to pick a later version of ant with support for ant extensions like "if" - - Specify plugin levels for non-standard plugins: - RAT - eclipse - ---> - -<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> - <artifactId>apache</artifactId> - <groupId>org.apache</groupId> - <version>21</version> - <relativePath /> - </parent> - - <groupId>org.apache.uima</groupId> - <artifactId>parent-pom</artifactId> - <version>12-SNAPSHOT</version> - <packaging>pom</packaging> - - <name>Apache UIMA ${project.artifactId}</name> - <description>UIMA (Unstructured Information Management Architecture). - UIMA promotes community development and reuse of annotators - that extract metadata from unstructured information (text, audio, video, etc.); - it provides for externalized declaration of type systems, - component configuration, aggregation, and more, - supports scalablity, and provides tooling.</description> - - <url>${uimaWebsiteUrl}</url> - <inceptionYear>2006</inceptionYear> - - <mailingLists> - <mailingList> - <name>Apache UIMA Development List</name> - <subscribe>dev-subscr...@uima.apache.org</subscribe> - <unsubscribe>dev-unsubscr...@uima.apache.org</unsubscribe> - <post>mailto:d...@uima.apache.org</post> - <archive> - https://mail-archives.apache.org/mod_mbox/uima-dev - </archive> - <otherArchives> - <otherArchive> - https://dir.gmane.org/gmane.comp.apache.uima.devel - </otherArchive> - <otherArchive> - http://uima.markmail.org - </otherArchive> - </otherArchives> - </mailingList> - <mailingList> - <name>Apache UIMA Users List</name> - <subscribe>user-subscr...@uima.apache.org</subscribe> - <unsubscribe>user-unsubscr...@uima.apache.org</unsubscribe> - <post>mailto:u...@uima.apache.org</post> - <archive> - https://mail-archives.apache.org/mod_mbox/uima-user - </archive> - <otherArchives> - <otherArchive> - https://dir.gmane.org/gmane.comp.apache.uima.general - </otherArchive> - <otherArchive> - http://uima.markmail.org - </otherArchive> - </otherArchives> - </mailingList> - <mailingList> - <name>Apache UIMA Commits List</name> - <subscribe>commits-subscr...@uima.apache.org</subscribe> - <unsubscribe>commits-unsubscr...@uima.apache.org</unsubscribe> - <post>mailto:commits@uima.apache.org</post> - <archive> - https://mail-archives.apache.org/mod_mbox/uima-commits - </archive> - </mailingList> - </mailingLists> - - <prerequisites> - <!-- 2.2.0 is broken when deploying - checksums invalid --> - <!-- 2.2.1 doesn't work --> - <maven>3.3.9</maven> - </prerequisites> - - <scm> - <connection> - scm:svn:http://svn.apache.org/repos/asf/uima/build/trunk/parent-pom - </connection> - <developerConnection> - scm:svn:https://svn.apache.org/repos/asf/uima/build/trunk/parent-pom - </developerConnection> - <url> - http://svn.apache.org/viewvc/uima/build/trunk/parent-pom - </url> - </scm> - - <issueManagement> - <system>Jira</system> - <!-- the form of the url is from http://maven.apache.org/plugins/maven-changes-plugin/usage.html --> - <!--url>https://issues.apache.org/jira/BrowseProject.jspa?projectId=12310570</url--> - <url>https://issues.apache.org/jira/browse/UIMA</url> - - </issueManagement> - - <ciManagement> - <system>Jenkins</system> - <url>https://builds.apache.org/</url> - <notifiers /> - </ciManagement> - - <!-- distribution management - is inherited from Apache pom - and specifies - https://repository.apache.org/service/local/staging/deploy/maven2 - and for snapshots: - https://repository.apache.org/content/repositories/snapshots --> - <!-- for children POMs maven automatically adds their artifactId to the URL below - unless overridden --> - <distributionManagement> - <site> - <id>uima.apache.org</id> <!-- following maven convention --> - <name>Apache UIMA Website</name> - <url>${uimaWebsiteDistributionUrl}</url> <!-- on people.apache.org: /www/uima.apache.org --> - </site> - </distributionManagement> - - <properties> - <!-- this property is overridden in child projects that are released, to correspond to the - Jira release category(ies) - We specify something here, because if accidentally left blank, it - generates a giant request for all changes --> - <jiraVersion>parent-pom-11</jiraVersion> <!-- for parent-pom-10. Change for each release --> - <uimaBuildResourcesVersion>5</uimaBuildResourcesVersion> - <uimaWebsiteUrl>http://uima.apache.org</uimaWebsiteUrl> - <uimaWebsiteDistributionUrl>scp://people.apache.org/www/uima.apache.org/</uimaWebsiteDistributionUrl> - <maven.build.timestamp.format>yyMMdd_HHmm</maven.build.timestamp.format> - <buildDateTime>${maven.build.timestamp}</buildDateTime> - - <!-- these properties are for docbook processing. --> - <!-- olink databases --> - <dolArtifactId>uima-docbook-olink</dolArtifactId> - <dolClassifier>olink</dolClassifier> - <dolRepo>${settings.localRepository}/org/apache/uima/${dolArtifactId}/1-SNAPSHOT</dolRepo> - <dolZip>${dolArtifactId}-1-SNAPSHOT-${dolClassifier}.zip</dolZip> - <dolUnzipped>${dolRepo}/docbook-olink</dolUnzipped> - <dolBuiltFile>${project.build.directory}/</dolBuiltFile> - <dolBuiltArtifactFile>${project.build.directory}/${dolZip}</dolBuiltArtifactFile> - - <pdfPaperType>USletter</pdfPaperType> - - <!-- This next dir *must match* the one the PearPackagingMavenPlugin uses --> - <pearPackagingDir>${project.build.directory}/pearPackaging</pearPackagingDir> - - <!-- poms wanting this need to set the postNoticeText to this value --> - <ibmNoticeText> -Portions of Apache UIMA were originally developed by -International Business Machines Corporation and are -licensed to the Apache Software Foundation under the -"Software Grant License Agreement", informally known as the -"IBM UIMA License Agreement". -Copyright (c) 2003, 2006 IBM Corporation. - </ibmNoticeText> - <!-- next line commented out - to let standard source-release assembly descriptor as specified - in standard Apache parent pom be used --> - <!-- SourceReleaseAssemblyDescriptor>multimodule-source-release</sourceReleaseAssemblyDescriptor--> - - - <!-- ============================= --> - <!-- * V E R S I O N S --> - <!-- ============================= --> - <rat.version>0.12</rat.version> - <maven.enforcer.version>3.0.0-M1</maven.enforcer.version> - <maven.version>3.0.5</maven.version> - <maven.javadoc.version>3.0.0-M1</maven.javadoc.version> - <felix.bundle.version>3.3.0</felix.bundle.version> - <surefire.version>2.20.1</surefire.version> - - <maven.compiler.target>1.7</maven.compiler.target> - <maven.compiler.source>1.7</maven.compiler.source> - <maven.surefire.heap>512m</maven.surefire.heap> - - </properties> - - <dependencyManagement> - <dependencies> - <dependency> - <groupId>junit</groupId> - <artifactId>junit</artifactId> - <version>3.8.1</version> - <scope>test</scope> - </dependency> - </dependencies> - </dependencyManagement> - - <!-- can't put this dependency at the top level - - causes them to be included in children --> - <!--dependencies> - <dependency> - <groupId>org.apache.uima</groupId> - <artifactId>uima-build-resources</artifactId> - <version>1-SNAPSHOT</version> - </dependency> - </dependencies--> - - <repositories> - <!-- note: inheritance does *NOT* merge subparts, - so, redeclare them --> - <!-- define repositories for getting Eclipse parts - because the one in "central" gives broken parts - 2017 - this repo not there anymore - <repository> - <id>eclipsePlugins</id> - <name>Eclipse components</name> - <layout>default</layout> - <url>http://repo1.maven.org/eclipse</url> - - <releases> - <updatePolicy>never</updatePolicy> - <checksumPolicy>fail</checksumPolicy> - </releases> - - <snapshots> - <enabled>false</enabled> - </snapshots> - </repository> - --> - - <!-- modify central repository access: - Turn on checksum checking--> - <repository> - <id>central</id> - <name>Maven Repository Switchboard</name> - <layout>default</layout> - <url>https://repo1.maven.org/maven2</url> - - <releases> - <enabled>true</enabled> - <checksumPolicy>fail</checksumPolicy> - <updatePolicy>never</updatePolicy> - </releases> - - <snapshots> - <enabled>false</enabled> - </snapshots> - - </repository> - - <!-- inherited - <repository> - <id>apache.snapshots</id> - <name>Apache Snapshot Repository</name> - <url>https://repository.apache.org/snapshots</url> - <releases> - <enabled>false</enabled> - </releases> - </repository> --> - - </repositories> - - <pluginRepositories> - <pluginRepository> - <id>apache.snapshots.plugins</id> - <name>Apache Snapshot Repository - Maven plugins</name> - <url>https://repository.apache.org/snapshots</url> - <layout>default</layout> - <releases> - <enabled>false</enabled> - </releases> - <snapshots> - <enabled>true</enabled> - <checksumPolicy>fail</checksumPolicy> - <updatePolicy>never</updatePolicy> - </snapshots> - </pluginRepository> - </pluginRepositories> - - <build> - <pluginManagement> - <plugins> - - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-deploy-plugin</artifactId> - <version>2.8.2</version> - </plugin> - - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-source-plugin</artifactId> - <version>3.0.1</version> - </plugin> - - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-resources-plugin</artifactId> - <version>3.0.2</version> - </plugin> - - <!-- assembly plugin - Disable running assembly:assembly with - warning message to use install instead --> - <plugin> - <artifactId>maven-assembly-plugin</artifactId> - <version>3.1.0</version> <!-- https://issues.apache.org/jira/browse/UIMA-3332 from superpom--> - <executions> - <execution> - <id>default-cli</id> - <configuration> - <descriptors> - <descriptor>do-not-use--mvn-assembly-assembly--instead-use-mvn-install</descriptor> - </descriptors> - </configuration> - </execution> - </executions> - </plugin> - - <plugin> - <groupId>org.codehaus.mojo</groupId> - <artifactId>build-helper-maven-plugin</artifactId> - <version>3.0.0</version> - </plugin> - - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-enforcer-plugin</artifactId> - <version>3.0.0-M1</version> - </plugin> - - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-plugin-plugin</artifactId> - <!-- Version 3.3 required for Java 8 builds --> - <!-- http://jira.codehaus.org/browse/MPLUGIN-244 --> - <!-- inherit from apache superpom (3.4 in 2017) --> - <version>3.5</version> - <executions> - <execution> - <!-- force to use process-classes phase so runs after Java Annotations are available --> - <!-- http://jira.codehaus.org/browse/MPLUGIN-267 --> - <id>default-descriptor</id> - <phase>process-classes</phase> - </execution> - <execution> - <id>generate-helpmojo</id> - <goals><goal>helpmojo</goal></goals> - </execution> - </executions> - <configuration> - <extractors><extractor>java-annotations</extractor></extractors> - </configuration> - </plugin> - - <!-- set Java 1.6 as the source and target of compilation --> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-compiler-plugin</artifactId> - <version>3.7.0</version> - <configuration> - <source>${maven.compiler.source}</source> - <target>${maven.compiler.target}</target> - <!--encoding>UTF-8</encoding this inherited from apache pom 7 --> - </configuration> - </plugin> - - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-dependency-plugin</artifactId> - <version>3.0.2</version> <!-- see https://issues.apache.org/jira/browse/UIMA-2963 --> - </plugin> - - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-javadoc-plugin</artifactId> - <version>${maven.javadoc.version}</version> - <configuration> - <source>${maven.compiler.source}</source> - <javadocVersion>${maven.compiler.source}</javadocVersion> <!-- https://issues.apache.org/jira/browse/UIMA-5369 --> - <notimestamp>true</notimestamp> - <encoding>UTF-8</encoding> - <!-- if next is omitted, causes all projects in reactor that don't - already have full javadocs built, to have them built --> - <detectOfflineLinks>false</detectOfflineLinks> - <quiet>true</quiet> - <!-- identify tags we use so we don't get warning messages for them --> - <tags> - <tag> - <name>generated</name> - <placement>X</placement> - </tag> - <tag> - <name>ordered</name> - <placement>X</placement> - </tag> - <tag> - <name>modifiable</name> - <placement>X</placement> - </tag> - <tag> - <name>model</name> - <placement>X</placement> - </tag> - <tag> - <name>pre</name> - <placement>X</placement> - </tag> - </tags> - </configuration> - <executions> - <execution> - <id>attach-javadocs</id> - <goals><goal>jar</goal></goals> - <!-- turn off javadoc build for each module by default - (unless apache-release - for speed) - override in individual cases to turn back on if wanted --> - <phase /> - </execution> - </executions> - </plugin> - - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-jar-plugin</artifactId> - <version>3.0.2</version> - <!-- version>2.3.2</version--> <!-- version 2.4 gives error org.codehaus.plexus.archiver.jar.Manifest.merge(org.codehaus.plexus.archiver.jar.Manifest) - see http://comments.gmane.org/gmane.comp.ide.eclipse.plugins.m2eclipse.user/9189 --> - <configuration> - <archive> - <manifestEntries> - <Project-Title>Apache UIMA</Project-Title> - <!-- Implementation-Title>${pom.name}</Implementation-Title from addDefaultImplementationEntries--> - <!-- Implementation-Version>${pom.version}</Implementation-Version from addDefaultImplementationEntries--> - <!-- Implementation-Vendor>Apache Software Foundation</Implementation-Vendor from addDefaultImplementationEntries--> - <!-- also added by default: - Implementation-Vendor-Id: ${pom.groupId} --> - <Implementation-Url>${uimaWebsiteUrl}</Implementation-Url> - <Implementation-License>http://www.apache.org/licenses/LICENSE-2.0.txt</Implementation-License> - <Build-Date>${buildDateTime}</Build-Date> - </manifestEntries> - <manifest> - <addDefaultSpecificationEntries>false</addDefaultSpecificationEntries> - </manifest> - </archive> - </configuration> - </plugin> - - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-antrun-plugin</artifactId> - <version>1.8</version> - - <dependencies> - <!-- 1.8.2 is used by v 1.7 of this plugin - <dependency> - <groupId>org.apache.ant</groupId> - <artifactId>ant</artifactId> - version 1.8.0 seems to be incompatible with some part of maven or m2eclipse - <version>1.7.1</version> - </dependency> - --> - <dependency> <!-- for ant extension supporting "if" --> - <groupId>ant-contrib</groupId> - <artifactId>ant-contrib</artifactId> - <version>20020829</version> - <scope>runtime</scope> - <exclusions> - <exclusion> <!-- is dragging in ant 1.5 --> - <groupId>ant</groupId> - <artifactId>ant</artifactId> - </exclusion> - </exclusions> - - </dependency> - <!-- next two enable <containsregexp> form for filesets --> - <dependency> - <groupId>org.apache.ant</groupId> - <artifactId>ant-apache-regexp</artifactId> - <version>1.10.1</version> - </dependency> - <dependency> - <groupId>jakarta-regexp</groupId> - <artifactId>jakarta-regexp</artifactId> - <version>1.4</version> - </dependency> - </dependencies> - </plugin> - - <!-- deprecated - move to m2eclipse, but keeping for now --> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-eclipse-plugin</artifactId> - <version>2.10</version> - <configuration> - <downloadSources>true</downloadSources> - </configuration> - </plugin> - - <plugin> - <groupId>org.apache.felix</groupId> - <artifactId>maven-bundle-plugin</artifactId> - <!-- version 2.0.0 fails --> - <!-- version 2.3.4 eliminates spurious warning messages --> - <!-- version 2.5 has accidental dependency on Java 6 --> - <version>3.3.0</version> - <extensions>true</extensions> - <executions> - <execution> - <id>uima-bundle</id> - <goals><goal>manifest</goal></goals> - <phase>process-classes</phase> - </execution> - </executions> - </plugin> - - <plugin> - <groupId>org.apache.rat</groupId> - <artifactId>apache-rat-plugin</artifactId> - <version>${rat.version}</version> - <executions> - <execution> - <id>default-cli</id> - <goals><goal>check</goal></goals> - <phase>verify</phase> - <!-- default configuration --> - <configuration> - <excludes> - <exclude>release.properties</exclude> <!-- generated file --> - <exclude>README*</exclude> - <exclude>RELEASE_NOTES*</exclude> - <exclude>issuesFixed/**</exclude> <!-- generated file --> - <exclude>src/main/resources/docbook-shared/titlepage/*.xsl</exclude> - <exclude>marker-file-identifying-*</exclude> <!-- empty file --> - <exclude>DEPENDENCIES</exclude> <!-- generated file --> - <exclude>**/MANIFEST.MF</exclude> <!-- MANIFEST.MF files cannot have comments --> - <exclude>**/*.ppt</exclude> <!-- power point sources --> - </excludes> - </configuration> - </execution> - </executions> - </plugin> - - <!-- generate the issuesFixed report of Jiras fixed in this release --> - <!-- uses the property "jiraVersion" to select the version --> - <!-- Runs automatically during release. - Can also be run manually using - mvn changes:jira-report -N -DjiraVersion=xxxxxx where - xxxxxx is the jira internal version number which you can get - from the Jira url (see parameter fixforversion=xxxxxx) - by going to https://issues.apache.org/jira/browse/UIMA - and selecting "Releases" and then going to the - particular version and looking in the url for - that version. --> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-changes-plugin</artifactId> - <!-- version 2.10 see https://issues.apache.org/jira/browse/UIMA-3764 --> - <version>2.12.1</version> <!-- Apache-wide pom has no entry for this plugin --> - <executions> - <execution> - <id>default-cli</id> - <goals><goal>jira-report</goal></goals> - <!-- don't use generate-sources - because javadoc plugin re-exec's that --> - <phase>generate-resources</phase> - <configuration> - <useJql>true</useJql> - <fixVersionIds>${jiraVersion}</fixVersionIds> - <columnNames>Type,Key,Status,Summary</columnNames> - <resolutionIds>Fixed</resolutionIds> - <statusIds>Closed,Resolved</statusIds> - <sortColumnNames>Type, Key</sortColumnNames> - <!-- changed sortColumnNames for Jira 5 - was: <sortColumnNames>Status, Key, Type</sortColumnNames> - --> - <outputDirectory>${basedir}/issuesFixed/</outputDirectory> - <maxEntries>1000</maxEntries> <!-- hopefully, bigger than ever needed --> - </configuration> - </execution> - </executions> - </plugin> - - <plugin> - <groupId>org.apache.uima</groupId> - <artifactId>uima-build-helper-maven-plugin</artifactId> - <version>7</version> - </plugin> - </plugins> - </pluginManagement> - - <plugins> - - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-enforcer-plugin</artifactId> - <executions> - <execution> - <id>enforce-versions</id> - <goals> - <goal>enforce</goal> - </goals> - <configuration> - <rules> - <requireMavenVersion> - <version>${maven.version}</version> - </requireMavenVersion> - <requireJavaVersion> - <version>${maven.compiler.target}</version> - </requireJavaVersion> - </rules> - </configuration> - </execution> - </executions> - </plugin> - - <!-- sets the following properties: - parsedVersion.majorVersion - parsedVersion.minorVersion - parsedVersion.incrementalVersion - parsedVersion.qualifier - parsedVersion.buildNumber - parsedVersion.osgiVersion - --> - <plugin> - <groupId>org.codehaus.mojo</groupId> - <artifactId>build-helper-maven-plugin</artifactId> - <executions> - <execution> - <id>parse-project-version</id> - <goals><goal>parse-version</goal></goals> - <configuration> - <propertyPrefix>parsedVersion</propertyPrefix> - </configuration> - </execution> - </executions> - </plugin> - - <plugin> - <groupId>org.apache.uima</groupId> - <artifactId>uima-build-helper-maven-plugin</artifactId> - <executions> - <execution> - <id>set buildYear and buildMonth</id> - <goals><goal>parse-date-time</goal></goals> - <configuration> - <parseSpecs> - <parseSpec> - <name>buildYear</name> - <format>yyyy</format> - </parseSpec> - <parseSpec> - <name>buildMonth</name> - <format>MMMM</format> - </parseSpec> - </parseSpecs> - </configuration> - </execution> - </executions> - </plugin> - - <!-- this overrides the apache pom to - use this resource bundle which - allows additional text after the NOTICE file - - Note: putting this in the pluginManagement section - fails to override the configuration from the - Apache common parent pom --> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-remote-resources-plugin</artifactId> - <version>1.5</version> - <executions> - <execution> - <goals><goal>process</goal></goals> - <configuration> - <resourceBundles> - <resourceBundle>org.apache.uima:uima-build-resources:${uimaBuildResourcesVersion}</resourceBundle> - </resourceBundles> - </configuration> - </execution> - </executions> - <!--dependencies> maybe for m2e - <dependency> - <groupId>org.slf4j</groupId> - <artifactId>slf4j-simple</artifactId> - <version>1.6.1</version> - </dependency> - </dependencies--> - - </plugin> - - <plugin> <!-- https://issues.apache.org/jira/browse/UIMA-2966 --> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-antrun-plugin</artifactId> - <executions> - <execution> - <id>dup-meta-jar-cleanup</id> - <goals><goal>run</goal></goals> - <phase>prepare-package</phase> <!-- before Jar plugin --> - <configuration> - <target> - <delete file="${project.build.directory}/classes/META-INF/maven/${project.groupId}/${project.artifactId}/pom.xml" quiet="true" /> - <delete file="${project.build.directory}/classes/META-INF/maven/${project.groupId}/${project.artifactId}/pom.properties" quiet="true" /> - </target> - </configuration> - </execution> - </executions> - </plugin> - </plugins> - - </build> - - <!--reporting--> - - <profiles> - - <!-- ************************************************** --> - <!-- * apache-release * --> - <!-- * NOTE: This profile is activated while * --> - <!-- * running the Maven build pipeline, usually * --> - <!-- * clean verify (for mvn release:prepare) or * --> - <!-- * deploy (for mvn release;perform), * --> - <!-- * but is not activated for the * --> - <!-- * outer execution for mvn release... * --> - <!-- * on the pom being released * --> - <!-- ************************************************** --> - <!-- fix apache common pom --> - <profile> - <id>apache-release</id> - <properties> - <isApacheRelease>true</isApacheRelease> - </properties> - - <build> - <pluginManagement> - <plugins> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-javadoc-plugin</artifactId> - <executions> - <execution> - <id>attach-javadocs</id> - <goals><goal>jar</goal></goals> - <!-- turn back on javadoc build for each module by default - https://issues.apache.org/jira/browse/UIMA-3251 --> - <phase>package</phase> - </execution> - </executions> - </plugin> - </plugins> - </pluginManagement> - - - <plugins> - - <!-- to support multi-module source-release builds --> - <plugin> - <artifactId>maven-assembly-plugin</artifactId> - <dependencies> - <dependency> - <groupId>org.apache.uima</groupId> - <artifactId>uima-build-resources</artifactId> - <version>${uimaBuildResourcesVersion}</version> - </dependency> - </dependencies> - <executions> - <execution> - <id>source-release-assembly</id> - <!-- note: this is configured above to run only at execution root --> - <configuration> - <!-- by not attaching, we prevent the source release from going to Maven repos --> - <!-- https://issues.apache.org/jira/browse/UIMA-3247 --> - <attach>false</attach> - </configuration> - </execution> - </executions> - </plugin> - - <!-- to run source plugin without forking --> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-source-plugin</artifactId> - <executions> - <execution> - <id>attach-sources-nf</id> - <goals><goal>jar-no-fork</goal></goals> - </execution> - <execution> - <id>attach-sources</id> - <phase /> <!-- turn off the plain jar one --> - </execution> - </executions> - </plugin> - - <plugin> - <groupId>org.apache.rat</groupId> - <artifactId>apache-rat-plugin</artifactId> - <executions> - <execution> - <id>default-cli</id> - </execution> - </executions> - </plugin> - - <!-- to fix up any generated Javadocs to have consistent line ends in html files --> - <!-- runs in phase after package --> - <plugin> - <artifactId>maven-antrun-plugin</artifactId> - <executions> - <execution> - <id>maybe-fix-javadoc-line-ends</id> - <phase>pre-integration-test</phase> - <goals><goal>run</goal></goals> - <configuration> - <target> - <taskdef name="if" classname="net.sf.antcontrib.logic.IfTask" /> - <if> - <available file="${project.build.directory}/site/apidocs/" /> - <then> - <echo>Fixing line-endings for ${project.build.directory}/site/apidocs/</echo> - <fixcrlf srcdir="${project.build.directory}/site/apidocs/"> - <include name="**/*.html" /> - </fixcrlf> - </then> - </if> - </target> - </configuration> - </execution> - <execution> - <id>sign and checksum source-release.zip</id> - <phase>verify</phase> <!-- after source-release is built --> - <goals><goal>run</goal></goals> - <configuration> - <target> - <taskdef name="if" classname="net.sf.antcontrib.logic.IfTask" /> - <property name="source-release" location="${project.build.directory}/${project.artifactId}-${project.version}-source-release.zip" /> - <if> - <available file="${source-release}" /> - <then> - <echo message="Generating checksums for source-release.zip" /> - <checksum format="MD5SUM" forceoverwrite="yes" algorithm="SHA-512" fileext=".sha512" file="${source-release}" /> - <!-- <checksum format="MD5SUM" forceoverwrite="yes" algorithm="sha1" file="${source-release}" /> --> - <!-- <checksum format="MD5SUM" forceoverwrite="yes" algorithm="md5" file="${source-release}" /> --> - <echo message="Generating gpg signatures for source-release.zip" /> - <exec executable="gpg" failonerror="true"> - <arg value="--detach-sign" /> - <arg value="--armor" /> - <arg value="--batch" /> - <arg value="${source-release}" /> - </exec> - </then> - </if> - </target> - </configuration> - </execution> - </executions> - </plugin> - - </plugins> - </build> - </profile> - - <!-- *************************************************** --> - <!-- * Run Rat report - for Jenkins * --> - <!-- * https://issues.apache.org/jira/browse/UIMA-2590 * --> - <!-- *************************************************** --> - <profile> - <id>run-rat-report</id> - - <build> - <plugins> - <plugin> - <groupId>org.apache.rat</groupId> - <artifactId>apache-rat-plugin</artifactId> - <executions> - <execution> - <id>default-cli</id> - </execution> - </executions> - </plugin> - - </plugins> - </build> - </profile> - - <!-- **************************************** --> - <!-- * Produce Jira report * --> - <!-- **************************************** --> - - <profile> - <id>mavenJirareport</id> - <activation> - <!-- NOTE: if you try to make this work more generally, by - using a marker file in all top-level release projects, - this approach fails because for other top-level - release projects, it substitutes the value of - the jiraVersion property from the top level pom, not - the pom being released. So other release projects include - this kind of profile within themselves, in a profile - for "apache-release" triggered by name. --> - - <!-- It would be nice to have this only run when releasing, - but the activation clauses are currently only - "ored" together, not "anded". --> - - <file><exists>marker-file-identifying-parent-pom</exists></file> - </activation> - <build> - <plugins> - <!-- overrides to enable release --> - <!-- to release 5-SNAPSHOT which includes uima-build-resources, hard code that version to 4 --> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-remote-resources-plugin</artifactId> - <executions> - <execution> - <goals><goal>process</goal></goals> - <configuration> - <resourceBundles> - <resourceBundle>org.apache.uima:uima-build-resources:${uimaBuildResourcesVersion}</resourceBundle> - </resourceBundles> - </configuration> - </execution> - </executions> - </plugin> - - <plugin> - <artifactId>maven-assembly-plugin</artifactId> - <dependencies> - <dependency> - <groupId>org.apache.uima</groupId> - <artifactId>uima-build-resources</artifactId> - <version>${uimaBuildResourcesVersion}</version> - </dependency> - </dependencies> - </plugin> - - <plugin> - <artifactId>maven-changes-plugin</artifactId> - <executions> - <execution> - <id>default-cli</id> - <configuration> - <fixVersionIds>${jiraVersion}</fixVersionIds> - </configuration> - </execution> - </executions> - </plugin> - </plugins> - </build> - </profile> - - <!-- **************************************** --> - <!-- * Override - don't produce Jira report * --> - <!-- **************************************** --> - - <!-- NOTE: if you use this, you MUST check in - the generated Jira report into SVN, otherwise - it won't appear in the release assemblies. --> - - <profile> - <id>mavenJirareportSkip</id> - <activation> - <property> - <name>maven.jiraReport.skip</name> - </property> - </activation> - <build> - <plugins> - <!-- Skip jira report --> - <plugin> - <artifactId>maven-changes-plugin</artifactId> - <executions> - <execution> - <id>default-cli</id> - <phase /> - </execution> - </executions> - </plugin> - </plugins> - </build> - - </profile> - - <!-- ********************************** --> - <!-- * Docbook Processing * --> - <!-- ********************************** --> - - <!-- Skip docbook processing unless - the leaf child project has a docbook directory --> - <profile> - <id>process-docbook</id> - <activation> - <file><exists>src/docbook</exists></file> - </activation> - - <!--dependencies--> - <!-- can't have a dependency in the parent pom - unless you want it - inherited by all child poms --> - <!-- dependency> - <groupId>org.apache.uima</groupId> - <artifactId>uima-build-resources</artifactId> - <version>1-SNAPSHOT</version> - </dependency --> - - <!-- having a dependency specified on 1-SNAPSHOT blocks release --> - <!--dependency> - <groupId>org.apache.uima</groupId> - <artifactId>${dolArtifactId}</artifactId> - <type>zip</type> - <classifier>${dolClassifier}</classifier> - <version>1-SNAPSHOT</version> - </dependency--> - <!--/dependencies--> - - - - <build> - <plugins> - <!-- something to set some properties for dates used in copyright notices --> - <!-- Works, but is slow due to loading groovy --> - <!--plugin> - <groupId>org.codehaus.groovy.maven</groupId> - <artifactId>gmaven-plugin</artifactId> - <version>1.0</version> - <executions> - <execution> - <phase>prepare-package</phase> - <goals> - <goal>execute</goal> - </goals> - <configuration> - <source> - import java.util.Date - import java.text.MessageFormat - def varYear = MessageFormat.format("{0,date,yyyy}", new Date()) - def varMonth = MessageFormat.format("{0,date,MMMMMMMMM}", new Date()) - project.properties['buildYear'] = varYear - project.properties['buildMonth'] = varMonth - </source> - </configuration> - </execution> - </executions> - </plugin--> - - <!-- use the dependency:unpack goal to get the shared resource - that has the docbook-shared directory - Unpack into spot relative to project - because - these are referred to in docbook sources using - relative references - - also unpack next to docbook-olink in - repository location for olink info, because - the site.xml files use relative location to - get at the uima entities --> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-dependency-plugin</artifactId> - <executions> - <execution> - <!-- use the dependency:unpack goal to get the shared resource - that has the docbook-shared directory - Unpack into spot relative to project - because - these are referred to in docbook sources using - relative references --> - <id>copyDocbookInfo</id> - <phase>prepare-package</phase> - <goals><goal>unpack</goal></goals> - <configuration> - <overWriteIfNewer>true</overWriteIfNewer> - <artifactItems> - <artifactItem> - <groupId>org.apache.uima</groupId> - <artifactId>uima-build-resources</artifactId> - <version>${uimaBuildResourcesVersion}</version> - <includes>docbook-shared/**</includes> - <outputDirectory>${project.build.directory}</outputDirectory> - </artifactItem> - </artifactItems> - </configuration> - </execution> - - <execution> - <!-- also unpack next to docbook-olink in - repository location for olink info, because - the site.xml files use relative location to - get at the uima entities --> - <id>copyDocbookInfoNextToOlink</id> - <phase>prepare-package</phase> - <goals><goal>unpack</goal></goals> - <configuration> - <overWriteIfNewer>true</overWriteIfNewer> - <markersDirectory>${dolRepo}/dependency-maven-plugin-markers</markersDirectory> - <artifactItems> - <artifactItem> - <groupId>org.apache.uima</groupId> - <artifactId>uima-build-resources</artifactId> - <version>${uimaBuildResourcesVersion}</version> - <includes>docbook-shared/**</includes> - <outputDirectory>${dolRepo}</outputDirectory> - </artifactItem> - </artifactItems> - </configuration> - </execution> - - <!-- use the dependency:unpack goal to get the - olink databases --> - <execution> - <id>getOlink</id> - <phase>prepare-package</phase> - <goals><goal>unpack</goal></goals> - <configuration> - <overWriteIfNewer>true</overWriteIfNewer> - <markersDirectory>${dolRepo}/dependency-maven-plugin-markers</markersDirectory> - <artifactItems> - <artifactItem> - <groupId>org.apache.uima</groupId> - <artifactId>${dolArtifactId}</artifactId> - <version>1-SNAPSHOT</version> - <type>zip</type> - <classifier>${dolClassifier}</classifier> - <outputDirectory>${dolUnzipped}</outputDirectory> - </artifactItem> - </artifactItems> - </configuration> - </execution> - </executions> - </plugin> - - <plugin> - <groupId>com.agilejava.docbkx</groupId> - <artifactId>docbkx-maven-plugin</artifactId> - <version>2.0.14</version> - <configuration> <!-- general configuration for both html and pdf --> - <sourceDirectory>${basedir}/src/docbook</sourceDirectory> - <includes>${bookNameRoot}.xml</includes> - <highlightSource>1</highlightSource> - <xincludeSupported>true</xincludeSupported> - <!-- olink common to pdf and html --> - <collectXrefTargets>yes</collectXrefTargets> - </configuration> - <executions> - <execution> - <id>html</id> - <goals> - <goal>generate-html</goal> - </goals> - <phase>package</phase> - <configuration> - <targetDirectory>${project.build.directory}/site/d</targetDirectory> - <htmlCustomization>${project.build.directory}/docbook-shared/top/html-single.xsl</htmlCustomization> - <!-- olink --> - <targetDatabaseDocument>file:///${dolUnzipped}/htmlsingle/site.xml</targetDatabaseDocument> - <targetsFilename>${dolUnzipped}/htmlsingle/${bookNameRoot}.db</targetsFilename> - </configuration> - </execution> - <execution> - <id>pdf</id> - <goals><goal>generate-pdf</goal></goals> - <phase>package</phase> - <configuration> - <!-- pdf: generate first in docbkx, then move. - because pdf generates an extra temp file xxx.fo - which we want to keep a bit in target in case of debug need --> - - <foCustomization>${project.build.directory}/docbook-shared/top/pdf.xsl</foCustomization> - <!-- olink --> - <targetDatabaseDocument>file:///${dolUnzipped}/pdf/site.xml</targetDatabaseDocument> - <targetsFilename>${dolUnzipped}/pdf/${bookNameRoot}.db</targetsFilename> - - <fop1Extensions>true</fop1Extensions> - - <fontSelectionStrategy>character-by-character</fontSelectionStrategy> - - <fonts> - <!-- embedded fonts --> - <!-- - This information must exactly match the font specified - in the fo file. Otherwise it will use a default font. - - For example, - <fo:inline font-family="Arial" font-weight="bold" font-style="normal"> - Arial-normal-normal font - </fo:inline> - for the font triplet specified by: - <font-triplet name="Arial" style="normal" weight="bold" /> - - If you do not want to embed the font in the pdf document - then do not include the "embed-url" attribute. - The font will be needed where the document is viewed - for it to be displayed properly. - - possible styles: normal | italic | oblique | backslant - possible weights: normal | bold | 100 | 200 | 300 | 400 - | 500 | 600 | 700 | 800 | 900 - (normal = 400, bold = 700) - --> - - <!-- - <font metrics-url="arial.xml" kerning="yes" embed-url="arial.ttf"> - <font-triplet name="Arial" style="normal" weight="normal" /> - <font-triplet name="ArialMT" style="normal" weight="normal" /> - </font> - <font metrics-url="arialb.xml" kerning="yes" embed-url="arialb.ttf"> - <font-triplet name="Arial" style="normal" weight="bold" /> - <font-triplet name="ArialMT" style="normal" weight="bold" /> - </font> - --> - - <!-- per UIMA-1051 - change to use standard Times Roman default PDF font --> - <!--font> - <name>Palatino</name> - <style>normal</style> - <weight>normal</weight> - <kerning>yes</kerning> - <embedFile>c:/Windows/Fonts/pala.TTF</embedFile> - <metricsFile>${project.build.directory}/docbook-shared/fonts/palatino.xml</metricsFile> - </font> - <font> - <name>Palatino</name> - <style>normal</style> - <weight>bold</weight> - <kerning>yes</kerning> - <embedFile>c:/Windows/Fonts/palab.TTF</embedFile> - <metricsFile>${project.build.directory}/docbook-shared/fonts/palatino-bold.xml</metricsFile> - </font> - <font> - <name>Palatino</name> - <style>italic</style> - <weight>normal</weight> - <kerning>yes</kerning> - <embedFile>c:/Windows/Fonts/palai.TTF</embedFile> - <metricsFile>${project.build.directory}/docbook-shared/fonts/palatino-italic.xml</metricsFile> - </font> - <font> - <name>Palatino</name> - <style>italic</style> - <weight>bold</weight> - <kerning>yes</kerning> - <embedFile>c:/Windows/Fonts/palabi.TTF</embedFile> - <metricsFile>${project.build.directory}/docbook-shared/fonts/palatino-bold-italic.xml</metricsFile> - </font--> - - </fonts> - <paperType>${pdfPaperType}</paperType> - </configuration> - </execution> - </executions> - - <dependencies> - <dependency> - <groupId>org.docbook</groupId> - <artifactId>docbook-xml</artifactId> - <version>4.4</version> - <scope>runtime</scope> - </dependency> - </dependencies> - </plugin> - - <plugin> - <artifactId>maven-resources-plugin</artifactId> - <executions> - <!-- copy the images to the html/images dir --> - <execution> - <id>docbook-copy-images</id> - <goals><goal>copy-resources</goal></goals> - <phase>package</phase> - <configuration> - <outputDirectory>${project.build.directory}/site/d/images</outputDirectory> - <resources> - <resource><directory>src/docbook/images</directory></resource> - </resources> - </configuration> - </execution> - <!-- copy the css stylesheet to the html dir --> - <execution> - <id>docbook-copy-css</id> - <goals><goal>copy-resources</goal></goals> - <phase>package</phase> - <configuration> - <outputDirectory>${project.build.directory}/site/d/css</outputDirectory> - <resources> - <resource><directory>${project.build.directory}/docbook-shared/css</directory></resource> - </resources> - </configuration> - </execution> - <!-- move the pdf from the docbkx to the site/d/ --> - <execution> - <id>docbook-move-pdf</id> - <goals><goal>copy-resources</goal></goals> <!-- no "move" goal, use copy --> - <phase>package</phase> - <configuration> - <outputDirectory>${project.build.directory}/site/d</outputDirectory> - <resources> - <resource> - <directory>${project.build.directory}/docbkx/pdf</directory> - <excludes><exclude>**.fo</exclude></excludes> - </resource> - </resources> - </configuration> - </execution> - </executions> - </plugin> - </plugins> - </build> - </profile> - - - <!-- ************************************ --> - <!-- * Build Custom Binary Distribution * --> - <!-- ************************************ --> - <profile> - <id>build distribution</id> - <activation> - <file><exists>src/main/assembly/bin.xml</exists></file> - </activation> - <build> - <plugins> - - <!-- assembly plugin - configuration to create bin and src distributions - from conventional places --> - <plugin> - <artifactId>maven-assembly-plugin</artifactId> - <executions> - <execution> - <id>uima-distr</id> - <goals><goal>single</goal></goals> - <phase>integration-test</phase> <!-- after first copies from jar/docbk pkg --> - <configuration> - <descriptors> - <descriptor>src/main/assembly/bin.xml</descriptor> - <!-- next is replaced with more standard source-release assembly --> - <!-- descriptor>src/main/assembly/src.xml</descriptor --> - </descriptors> - <finalName>${assemblyFinalName}</finalName> - <tarLongFileMode>gnu</tarLongFileMode> - </configuration> - </execution> - </executions> - </plugin> - - <!-- https://issues.apache.org/jira/browse/UIMA-2008 --> - <!-- no maven deployment of this project's artifacts --> - <!-- binary build artifact deployed from apache mirror system after release --> - <plugin> - <artifactId>maven-deploy-plugin</artifactId> - <configuration> - <skip>true</skip> - </configuration> - </plugin> - <plugin> - <artifactId>maven-antrun-plugin</artifactId> - <executions> - <execution> - <id>generate checksums for binary artifacts</id> - <goals><goal>run</goal></goals> - <phase>verify</phase> - <configuration> - <target> - <checksum algorithm="SHA-512" fileext=".sha512" format="MD5SUM" forceoverwrite="yes"> - <fileset dir="${project.build.directory}"> - <include name="*.zip" /> - <include name="*.gz" /> - </fileset> - </checksum> - <!-- - <checksum algorithm="sha1" format="MD5SUM" forceoverwrite="yes"> - <fileset dir="${project.build.directory}"> - <include name="*.zip" /> - <include name="*.gz" /> - </fileset> - </checksum> - <checksum algorithm="md5" format="MD5SUM" forceoverwrite="yes"> - <fileset dir="${project.build.directory}"> - <include name="*.zip" /> - <include name="*.gz" /> - </fileset> - </checksum> - --> - </target> - </configuration> - </execution> - </executions> - </plugin> - - </plugins> - </build> - </profile> - - <!-- ************************************ --> - <!-- * Build Eclipse Plugin * --> - <!-- ************************************ --> - <profile> - <id>build eclipse plugins</id> - <activation> - <file> - <exists>marker-file-identifying-eclipse-plugin</exists> - </file> - </activation> - <build> - <!-- The final name is typically overridden in the individual project - to follow the Eclipse naming rules. Rather than just the artifactId, - Eclipse wants this name to be the same as the Bundle-SymbolicName, - which typically starts with org.apache.uima, and isn't the same as - the artifact name. - examples: - uimaj-ep-jcasgen - org.apache.uima.jcas.jcasgenp - uimaj-ep-configurator - org.apache.uima.desceditor --> - <finalName>${project.artifactId}_${parsedVersion.osgiVersion}</finalName> - - <!-- resources are "merged" --> - <!-- needed to copy resources, icons, and the plugin.xml to the result --> - <resources> - <resource> - <directory>.</directory> - <includes> - <include>plugin.xml</include> - <!-- include subdir of icons too, [UIMA-1958] --> - <include>icons/**/*.*</include> - </includes> - </resource> - <!-- need the following, is not "merged" from the overall maven superPom --> - <resource> - <directory>src/main/resources</directory> - </resource> - </resources> - - <pluginManagement> - - <!-- run the felix plugin in manifest mode - because that plugin doesn't resolve - all properties e.g., parsedVersion.osgiVersion --> - <plugins> - <plugin> - <groupId>org.apache.felix</groupId> - <artifactId>maven-bundle-plugin</artifactId> - <executions> - <execution> - <id>uima-bundle</id> - <goals><goal>manifest</goal></goals> - <phase>process-classes</phase> - <configuration> - <!-- we put the generate manifest in the spot where Eclipse - plugins think it will be --> - <manifestLocation>META-INF/</manifestLocation> - </configuration> - </execution> - <!-- turn off unneeded executions --> - <execution> - <id>default-deploy</id> - <phase /> - </execution> - <execution> - <id>default-install</id> - <phase /> - </execution> - <execution> - <id>default-bundle</id> - <phase /> - </execution> - </executions> - </plugin> - - <!-- pick up the manifest felix generates --> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-jar-plugin</artifactId> - <configuration> - <archive> - <manifestFile>META-INF/MANIFEST.MF</manifestFile> - </archive> - </configuration> - </plugin> - - <!-- special eclipse:eclipse configuration for Eclipse plugins --> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-eclipse-plugin</artifactId> - <!-- version set in parent-pom-top --> - <configuration> - <manifest>.ignore</manifest> - <pde>true</pde> - <!-- set next to false because refs to runtime project - as a project don't work (because it is a library project, - and has no sources of its own - - A consequence of this: If you change code a plugin depends on, - run "mvn install" on the changed code to get your plugin to - pick up the changes - --> - <useProjectReferences>false</useProjectReferences> - </configuration> - </plugin> - - </plugins> - </pluginManagement> - - <plugins> - - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-antrun-plugin</artifactId> - <executions> - <!-- https://issues.apache.org/jira/browse/UIMA-2967 --> - <execution> - <id>clear-META-INF</id> - <goals><goal>run</goal></goals> - <phase>compile</phase> <!-- before maven-bundle-plugin plugin --> - <configuration> - <target> - <delete file="META-INF/MANIFEST.MF" quiet="true" /> - </target> - </configuration> - </execution> - </executions> - </plugin> - - </plugins> - </build> - </profile> - - <!-- ************************************ --> - <!-- * Build Eclipse Feature * --> - <!-- ************************************ --> - <profile> - <id>build eclipse features</id> - <activation> - <file> - <exists>marker-file-identifying-eclipse-feature</exists> - </file> - </activation> - <build> - <finalName>${project.artifactId}_${parsedVersion.osgiVersion}</finalName> - <!-- turn on filtering for these resources --> - <resources> - <resource> - <directory>${basedir}</directory> - <includes> - <include>feature.properties</include> - <include>feature.xml</include> - <include>uima-eclipse-user-agreement.html</include> - </includes> - <filtering>true</filtering> - </resource> - </resources> - - <!-- The feature.xml is filtered here, rather than in going from the - top level place to the Jar, because Eclipse feature manipulation - uses the top level value. - --> - <plugins> - <!-- filter the feature.xml to have the right version info - for Eclipse at the top level --> - <plugin> - <artifactId>maven-resources-plugin</artifactId> - <executions> - <execution> - <id>filter feature.xml</id> - <!-- run before process-resources, which uses this result --> - <phase>generate-resources</phase> - <goals><goal>copy-resources</goal></goals> - <configuration> - <outputDirectory>${basedir}</outputDirectory> - <resources> - <resource> - <directory>src/main/resources</directory> - <includes><include>feature.xml</include></includes> - <filtering>true</filtering> - </resource> - </resources> - </configuration> - </execution> - </executions> - </plugin> - </plugins> - </build> - </profile> - - <!-- ************************************ --> - <!-- * Build Eclipse Update Subsite * --> - <!-- ************************************ --> - <profile> - <id>build-eclipse-update-subsite</id> - <activation> - <file> - <exists>marker-file-identifying-eclipse-update-site</exists> - </file> - </activation> - <properties> - <eusWork>${project.build.directory}/eus-work</eusWork> - <toBePacked>${project.build.directory}/toBePacked</toBePacked> - <distsvnroot>https://dist.apache.org/</distsvnroot> -<!-- <distsvnroot>file:///svn/t/</distsvnroot> --> - </properties> - <build> - <plugins> - - <!-- ============================================================================ --> - <!-- U s e o f d i s t . a p a c h e . o r g S V N --> - <!-- --> - <!-- Goals: avoid copying to /release/, use svn commit to do --> - <!-- just the changed files --> - <!-- --> - <!-- Safety (abandonded) --> - <!-- for safety, work in the /dev/ area --> - <!-- For vote, user can do commit to /dev/ area --> - <!-- After vote, user does svn switch to /release/ area and commits --> - <!-- Above aproach abandoned, just be careful not to commit before vote --> - <!-- --> - <!-- svn (release) -> checkout --> - <!-- srcs -> toBePacked -> eus-work - - - - +-> subsite -> (manual) commit --> - <!-- SC SC --> - <!-- --> - <!-- SC = sign & checksum --> - <!-- the 2nd SC is for the updated artifacts and contents of the subsite --> - <!-- ============================================================================ --> - - <!-- ============================================================================ --> - <!-- O v e r a l l F l o w --> - <!-- --> - <!-- PROCESS-SOURCES --> - <!-- New plugins to be compressed -> target/toBePacked --> - <!-- --> - <!-- New features to be included -> target/eus-work --> - <!-- (eus = Eclipse Update Site) --> - <!-- --> - <!-- filter category.xml to pick up version # --> - <!-- --> - <!-- PACKAGE --> - <!-- Pack step goes from target/toBePacked -> target/eus-work --> - <!-- --> - <!-- Release SVN checkout -> target/eclipse-update-site/[component] --> - <!-- (This is the current site - to be updated) --> - <!-- --> - <!-- Publish metadata goes from target/eus-work -> eclipse-update-site/[comp] --> - <!-- (publish run in "append" mode) --> - <!-- --> - <!-- Category update goes from target/eus-work -> eclipse-update-site/[comp] --> - <!-- --> - <!-- (if apache-release: --> - <!-- do checksums and sign in target/eus-work --> - <!-- delete prev checksums and signature for artifacts/content.jar --> - <!-- add new checksum/sign for these two jars --> - <!-- copy all checksums/signatures from eus-work --> - <!-- ) --> - <!-- --> - <!-- ============================================================================ --> - - <!-- ============================================================================ --> - <!-- Alternate flow if apache-release is not defined - --> - <!-- skip getting previous update site from dist.apache.org --> - <!-- ============================================================================ --> - - <!-- filter the category.xml to have the right version info - for Eclipse at the top level --> - <plugin> - <artifactId>maven-resources-plugin</artifactId> - <executions> - <execution> - <id>filter-category.xml</id> - <!-- run before package, which uses this result --> - <phase>process-sources</phase> - <goals><goal>copy-resources</goal></goals> - <configuration> - <outputDirectory>${basedir}</outputDirectory> - <resources> - <resource> - <directory>src/main/resources</directory> - <includes><include>category.xml</include></includes> - <filtering>true</filtering> - </resource> - </resources> - </configuration> - </execution> - </executions> - </plugin> - - <plugin> - <artifactId>maven-antrun-plugin</artifactId> - <executions> - - <execution> - <id>BuildUpdateSite-clearWorkAreas</id> - <phase>initialize</phase> - <goals><goal>run</goal></goals> - <configuration> - <target> - <delete dir="${toBePacked}" quiet="true" /> - <delete dir="${eusWork}" /> - </target> - </configuration> - </execution> - - <execution> - <id>BuildUpdateSite-pack-svnget-buildMetadata-commit-to-dev</id> - <phase>package</phase> - <goals><goal>run</goal></goals> - <configuration> - <target> - <taskdef name="if" classname="net.sf.antcontrib.logic.IfTask" /> - - <!-- =================================== --> - <!-- Check we can access build tools --> - <!-- =================================== --> - <!-- if the property uima-maven-build-eclipse-home is set, use it, otherwise don't --> - <condition property="eclipse.home" value="${uima-maven-build-eclipse-home}"> - <not> - <equals arg1="${uima-maven-build-eclipse-home}" arg2="$${uima-maven-build-eclipse-home}" /> - </not> - </condition> - - <property environment="envVar" /> - <condition property="eclipse.home" value="${envVar.ECLIPSE_HOME}"> - <isset property="envVar.ECLIPSE_HOME" /> - </condition> - - <fail unless="eclipse.home" message="********** Please set up and use an ant property eclipse.home set to an Eclipse installation at level 3.3 or later, e.g. c:/eclipses/3.3/eclipse" /> - - <fail unless="uima-eclipse-jar-processor" message="********** Please add to your settings.xml file the property uima-eclipse-jar-processor, point to this within an Eclipse installation at level 4.2 or later, e.g. \$\{uima-maven-build-eclipse-home\}/plugins/org.eclipse.equinox.p2.jarprocessor_1.0.200.v20110808-1657.jar" /> - - <!-- =================================== --> - <!-- SVN checkout from release --> - <!-- and checkout to subsite --> - <!-- =================================== --> - - <if> - <equals arg1="${isApacheRelease}" arg2="true" /> - <then> - - <echo>checking out eclipse update subsite ${eclipseUpdateSiteComponent} from dist ...release...</echo> - <delete dir="${eclipseUpdateSubSite}" quiet="true" /> - <exec executable="svn" failonerror="true"> - <arg value="checkout" /> - <arg value="${distsvnroot}repos/dist/release/uima/eclipse-update-site/${eclipseUpdateSiteComponent}" /> - <arg value="${eclipseUpdateSubSite}" /> - </exec> - - <!-- abandon safety for now - <echo>switching this checkout to ...dev... for safety</echo> - <exec executable="svn"> - <arg value="switch" /> - <arg value="- -force" /> remove space between 2 dashes if uncommented - <arg value="- -accept" /> remove space between 2 dashes if uncommented - <arg value="mine-full" /> - <arg value="${distsvnroot}repos/dist/dev/uima/eclipse-update-site/${eclipseUpdateSiteComponent}" /> - <arg value="${eclipseUpdateSubSite}" /> - </exec> - --> - </then> - <else> - <echo>skipping checkout of current svn dist release (because not apache-release)</echo> - <!-- https://issues.apache.org/jira/browse/UIMA-3501 --> - <delete dir="${eclipseUpdateSubSite}" quiet="true" /> - </else> - </if> - - <echo>Compress plugin Jars using pack200 - this may take a minute or 2</echo> - <java jar="${uima-eclipse-jar-processor}" fork="true" failonerror="true" maxmemory="256m"> - <arg line="-processAll" /> - <arg line="-repack" /> - <arg line="-pack" /> - <arg line="-verbose" /> - <!-- only pack the plugins. The publisher won't copy packed "features", - they are tiny anyways --> - <arg line="-outputDir ${eusWork}/plugins" /> - <arg line="${toBePacked}" /> - </java> - - <echo>Save conditioned Jars prior to signing, in case of redo</echo> - <echo>-------------------------------------------------------</echo> - <copy todir="${project.build.directory}/saved/features" failonerror="true"> - <fileset dir="${eusWork}/features" includes="*.jar" /> - </copy> - <copy todir="${project.build.directory}/saved/plugins" failonerror="true"> - <fileset dir="${eusWork}/plugins" includes="*.jar" /> - </copy> - - <!--FAILED EXPERIMENT: COMMENTED OUT - manually publish - eusWork to subsite - rename to follow Eclipse conventions - <echo>Copy jar and jar.pack.gz artifacts to the target subsite</echo> - --> - <!-- mimic publish action of renaming artifacts from -SNAPSHOT to .SNAPSHOT --> - <!-- We do an ANT copy because the publishArtifacts won't copy if the target - has an indentically-named artifact (as is often the case during - testing, with the artifact ending in -SNAPSHOT) --> - <!-- - <copy todir="${eclipseUpdateSubSite}"> - <fileset dir="${eusWork}" /> - <compositemapper> - <globmapper from="*-SNAPSHOT.jar" to="*.SNAPSHOT.jar" /> - <globmapper from="*-SNAPSHOT.jar.pack.gz" to="*.SNAPSHOT.jar.pack.gz" /> - <regexpmapper from="^(.(?!-SNAPSHOT))*\.jar(.*)$$" to="\0" /> - </compositemapper> - </copy> - --> - - - <echo>Generate the p2 metadata and publish new artifacts</echo> - <!-- Append is needed because category info is incremental with each additional release --> - <!-- publishArtifacts is needed to generate p2 metadata for the pack.gz forms --> - <!-- - tried and failed: using ANT to copy artifacts to the target - doesn't update metadata - for pack.gz form ! if you don't publish artifacts - - doesn't update artifacts.jar - - deleting SNAPSHOT jars in the eclipse update subsite - - fails because the previous metadata has info about those jars - and that isn't deleted, and continues to be used - --> - <java jar="${eclipse-equinox-launcher}" fork="true" failonerror="true" maxmemory="256m"> - <arg line="-application org.eclipse.equinox.p2.publisher.FeaturesAndBundlesPublisher" /> - <arg line="-metadataRepository file:///${eclipseUpdateSubSite}" /> - <arg line="-artifactRepository file:///${eclipseUpdateSubSite}" /> - <arg line="-source ${eusWork}" /> - <arg line="-configs ANY.ANY.ANY" /> - <arg line="-publishArtifacts" /> - <arg line="-reusePack200Files" /> - <arg line="-compress" /> - <arg line="-append" /> - </java> - - <echo>Augment p2 metadata with category information</echo> - <java jar="${eclipse-equinox-launcher}" fork="true" failonerror="true" maxmemory="256m"> - <arg line="-application org.eclipse.equinox.p2.publisher.CategoryPublisher" /> - <arg line="-metadataRepository file:///${eclipseUpdateSubSite}" /> - <arg line="-categoryDefinition file:///${basedir}/category.xml" /> - <arg line="-categoryQualifier apache-uima" /> - <arg line="-compress" /> - </java> - - - <!-- ========================================== --> - <!-- If apache-release, do checksums and sign --> - <!-- ========================================== --> - - <if> - <equals arg1="${isApacheRelease}" arg2="true" /> - <then> - - <echo message="Generating checksums for new features and plugins" /> - <checksum algorithm="SHA-512" fileext=".sha512" format="MD5SUM" forceoverwrite="yes"> - <fileset dir="${eusWork}"> - <include name="**/*.gz" /> - <include name="**/*.jar" /> - </fileset> - </checksum> - - <!-- - <checksum algorithm="sha1" format="MD5SUM" forceoverwrite="yes"> - <fileset dir="${eusWork}"> - <include name="**/*.gz" /> - <include name="**/*.jar" /> - </fileset> - </checksum> - <checksum algorithm="md5" format="MD5SUM" forceoverwrite="yes"> - <fileset dir="${eusWork}"> - <include name="**/*.gz" /> - <include name="**/*.jar" /> - </fileset> - </checksum> --> - <echo message="Generating gpg signatures for new features and plugins" /> - <apply executable="gpg" dir="${eusWork}" failonerror="true"> - <arg value="--detach-sign" /> - <arg value="--armor" /> - <!-- batch flag needed to avoid gpg hang up --> - <arg value="--batch" /> - <fileset dir="${eusWork}"> - <include name="**/*.jar" /> - <include name="**/*.jar.pack.gz" /> - </fileset> - </apply> - - <echo message="Copying the checksums and signatures to the update subsite" /> - <copy todir="${eclipseUpdateSubSite}" failonerror="true"> - <fileset dir="${eusWork}"> - <include name="**/*.asc" /> - <include name="**/*.sha512" /> - <!-- <include name="**/*.md5" /> --> - <!-- <include name="**/*.sha1" /> --> - </fileset> - </copy> - - <echo message="Clearing previous checksums and signatures for update artifacts.jar and content.jar" /> - <delete dir="${eclipseUpdateSubSite}"> - <include name="*.asc" /> - <include name="**/*.sha512" /> - <!-- <include name="*.md5" /> --> - <!-- <include name="*.sha1" /> --> - </delete> - - <echo message="Generating checksums for updated artifacts.jar and content.jar" /> - <checksum algorithm="SHA-512" fileext=".sha512" format="MD5SUM" forceoverwrite="yes"> - <fileset dir="${eclipseUpdateSubSite}"> - <include name="*.jar" /> - </fileset> - </checksum> - - <!-- - <checksum algorithm="sha1" format="MD5SUM" forceoverwrite="yes"> - <fileset dir="${eclipseUpdateSubSite}"> - <include name="*.jar" /> - </fileset> - </checksum> - <checksum algorithm="md5" format="MD5SUM" forceoverwrite="yes"> - <fileset dir="${eclipseUpdateSubSite}"> - <include name="*.jar" /> - </fileset> - </checksum> - --> - - <echo message="Generating gpg signatures for artifacts.jar and content.jar" /> - <apply executable="gpg" dir="${eclipseUpdateSubSite}" failonerror="true"> - <arg value="--detach-sign" /> - <arg value="--armor" /> - <!-- batch flag needed to avoid gpg hang up --> - <arg value="--batch" /> - <fileset dir="${eclipseUpdateSubSite}"> - <include name="*.jar" /> - </fileset> - </apply> - - </then> - </if> - - - </target> - </configuration>
[... 3768 lines stripped ...]