Home | History | Annotate | Download | only in 35
      1 <?xml version="1.0" encoding="ISO-8859-1"?>
      2 <!--
      3 
      4    Licensed to the Apache Software Foundation (ASF) under one or more
      5    contributor license agreements.  See the NOTICE file distributed with
      6    this work for additional information regarding copyright ownership.
      7    The ASF licenses this file to You under the Apache License, Version 2.0
      8    (the "License"); you may not use this file except in compliance with
      9    the License.  You may obtain a copy of the License at
     10 
     11        http://www.apache.org/licenses/LICENSE-2.0
     12 
     13    Unless required by applicable law or agreed to in writing, software
     14    distributed under the License is distributed on an "AS IS" BASIS,
     15    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     16    See the License for the specific language governing permissions and
     17    limitations under the License.
     18 
     19 -->
     20 <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">
     21   <modelVersion>4.0.0</modelVersion>
     22   <parent>
     23     <groupId>org.apache</groupId>
     24     <artifactId>apache</artifactId>
     25     <version>15</version>
     26   </parent>
     27   <groupId>org.apache.commons</groupId>
     28   <artifactId>commons-parent</artifactId>
     29   <packaging>pom</packaging>
     30   <version>35</version>
     31   <name>Apache Commons Parent</name>
     32   <url>http://commons.apache.org/</url>
     33   <description>The Apache Commons Parent POM provides common settings for all Apache Commons components.</description>
     34 
     35 <!--
     36 Version 35:
     37 
     38 - Suppress test Javadocs
     39 - Update JaCoCo -> 0.7.2.201409121644
     40 - Update maven-compiler-plugin to 3.1 -> 3.2
     41 - Update maven-source-plugin to 2.2.1 -> 2.4
     42 - Update maven-site-plugin 3.3 -> 3.4
     43 - Update maven-gpg-plugin 1.4 -> 1.5
     44 - Update maven-jar-plugin 2.4 -> 2.5
     45 - Update maven-release-plugin 2.4.2 -> 2.5.1
     46 - Update maven-bundle-plugin 2.4.0 -> 2.5.3
     47 - Update buildnumber-maven-plugin 1.2 -> 1.3
     48 - Update wagon-ssh 2.3 -> 2.6
     49 - Update maven-scm-publish-plugin 1.0 -> 1.1
     50 - Update jdepend-maven-plugin 2.0-beta-2 -> 2.0
     51 - Update apache-rat-plugin 0.10 -> 0.11
     52 - Update maven-clean-plugin 2.5 -> 2.6.
     53 - Update maven-changes-plugin 2.9 -> 2.11
     54 - Update maven-deploy-plugin 2.8.1 -> 2.8.2
     55 - Update maven-install-plugin 2.5.1 -> 2.5.2
     56 - Update maven-javadic-plugin 2.9.1 -> 2.10.1
     57 - Update apache 13 -> 15
     58 - Add property commons.findbugs.version.
     59 
     60  -->
     61 
     62   <!-- Maven versions plugin reports an error if this is omitted -->
     63   <prerequisites>
     64     <maven>3.0</maven>
     65   </prerequisites>
     66 
     67   <ciManagement>
     68     <system>continuum</system>
     69     <url>https://continuum-ci.apache.org/</url>
     70   </ciManagement>
     71 
     72   <!--
     73     Starting with version 22, the RAT plugin has changed Maven group and id, so any existing configuration
     74     needs to be updated.
     75     To fix component POMs, please change any occurrences of:
     76         <groupId>org.codehaus.mojo</groupId>
     77         <artifactId>rat-maven-plugin</artifactId>
     78     to the new values:
     79         <groupId>org.apache.rat</groupId>
     80         <artifactId>apache-rat-plugin</artifactId>
     81 
     82     Site deployment
     83     ===============
     84     Cannot define this here at present, see https://issues.apache.org/jira/browse/COMMONSSITE-26.
     85 
     86     The following should be added to the component POM:
     87 
     88     <distributionManagement>
     89       <site>
     90         <id>commons.site</id>
     91         <name>Apache Commons Site SVN</name>
     92         <url>scm:svn:${commons.scmPubUrl}</url>
     93       </site>
     94     </distributionManagement>
     95 
     96     Alternatively you can map the component's existing site id to the
     97     commons.scmPubServer property.
     98 
     99     Coverage tool selection
    100     =======================
    101     Starting with release 30, there are optional profiles for both Cobertura and JaCoCo.
    102     These can be enabled independently on the command-line:
    103 
    104     mvn site -Pcobertura -Pjacoco
    105 
    106     Or the component can define a default coverage tool by creating either (or both) of the following files:
    107 
    108     src/site/resources/profile.cobertura
    109     src/site/resources/profile.jacoco
    110 
    111     These can later be overridden by cancelling the profile:
    112 
    113     mvn site -P!jacoco
    114 
    115   -->
    116 
    117   <!--
    118     This section *must* be overwritten by subprojects. It is only to allow
    119     a release of the commons-parent POM.
    120   -->
    121   <scm>
    122     <connection>scm:svn:http://svn.apache.org/repos/asf/commons/proper/commons-parent/trunk</connection>
    123     <developerConnection>scm:svn:https://svn.apache.org/repos/asf/commons/proper/commons-parent/trunk</developerConnection>
    124     <url>http://svn.apache.org/viewvc/commons/proper/commons-parent/trunk</url>
    125   </scm>
    126 
    127   <mailingLists>
    128     <!-- N.B. commons-site now uses the Apache POM so has its own copy of the mailing list definitions -->
    129     <!--
    130         Components should normally override the default mailing list report by using the comnand
    131         mvn commons:mail-page
    132         This generates the file src/site/xdoc/mail-lists.xml which when processed will replace the PIR version.
    133      -->
    134     <!-- Changes to this list should be synchronised with the commons build plugin -->
    135     <mailingList>
    136       <name>Commons User List</name>
    137       <subscribe>user-subscribe (a] commons.apache.org</subscribe>
    138       <unsubscribe>user-unsubscribe (a] commons.apache.org</unsubscribe>
    139       <post>user (a] commons.apache.org</post>
    140       <archive>http://mail-archives.apache.org/mod_mbox/commons-user/</archive>
    141       <otherArchives>
    142         <otherArchive>http://markmail.org/list/org.apache.commons.users/</otherArchive>
    143         <otherArchive>http://old.nabble.com/Commons---User-f319.html</otherArchive>
    144         <otherArchive>http://www.mail-archive.com/user@commons.apache.org/</otherArchive>
    145         <otherArchive>http://news.gmane.org/gmane.comp.jakarta.commons.user</otherArchive>
    146       </otherArchives>
    147     </mailingList>
    148     <mailingList>
    149       <name>Commons Dev List</name>
    150       <subscribe>dev-subscribe (a] commons.apache.org</subscribe>
    151       <unsubscribe>dev-unsubscribe (a] commons.apache.org</unsubscribe>
    152       <post>dev (a] commons.apache.org</post>
    153       <archive>http://mail-archives.apache.org/mod_mbox/commons-dev/</archive>
    154       <otherArchives>
    155         <otherArchive>http://markmail.org/list/org.apache.commons.dev/</otherArchive>
    156         <otherArchive>http://old.nabble.com/Commons---Dev-f317.html</otherArchive>
    157         <otherArchive>http://www.mail-archive.com/dev@commons.apache.org/</otherArchive>
    158         <otherArchive>http://news.gmane.org/gmane.comp.jakarta.commons.devel</otherArchive>
    159       </otherArchives>
    160     </mailingList>
    161     <mailingList>
    162       <name>Commons Issues List</name>
    163       <subscribe>issues-subscribe (a] commons.apache.org</subscribe>
    164       <unsubscribe>issues-unsubscribe (a] commons.apache.org</unsubscribe>
    165       <archive>http://mail-archives.apache.org/mod_mbox/commons-issues/</archive>
    166       <otherArchives>
    167         <otherArchive>http://markmail.org/list/org.apache.commons.issues/</otherArchive>
    168         <otherArchive>http://old.nabble.com/Commons---Issues-f25499.html</otherArchive>
    169         <otherArchive>http://www.mail-archive.com/issues@commons.apache.org/</otherArchive>
    170       </otherArchives>
    171     </mailingList>
    172     <mailingList>
    173       <name>Commons Commits List</name>
    174       <subscribe>commits-subscribe (a] commons.apache.org</subscribe>
    175       <unsubscribe>commits-unsubscribe (a] commons.apache.org</unsubscribe>
    176       <archive>http://mail-archives.apache.org/mod_mbox/commons-commits/</archive>
    177       <otherArchives>
    178         <otherArchive>http://markmail.org/list/org.apache.commons.commits/</otherArchive>
    179         <otherArchive>http://www.mail-archive.com/commits@commons.apache.org/</otherArchive>
    180       </otherArchives>
    181     </mailingList>
    182     <mailingList>
    183       <name>Apache Announce List</name>
    184       <subscribe>announce-subscribe (a] apache.org</subscribe>
    185       <unsubscribe>announce-unsubscribe (a] apache.org</unsubscribe>
    186       <archive>http://mail-archives.apache.org/mod_mbox/www-announce/</archive>
    187       <otherArchives>
    188         <otherArchive>http://markmail.org/list/org.apache.announce/</otherArchive>
    189         <otherArchive>http://old.nabble.com/Apache-News-and-Announce-f109.html</otherArchive>
    190         <otherArchive>http://www.mail-archive.com/announce@apache.org/</otherArchive>
    191         <otherArchive>http://news.gmane.org/gmane.comp.apache.announce</otherArchive>
    192       </otherArchives>
    193     </mailingList>
    194   </mailingLists>
    195   <build>
    196     <!-- TODO find a better way to add N&L files to jars and test jars
    197          See also maven-remote-resources-plugin configuration below.
    198     -->
    199     <resources>
    200       <!-- This is the default setting from the super-pom -->
    201       <resource>
    202         <directory>src/main/resources</directory>
    203       </resource>
    204       <!-- hack to ensure the N&L appear in jars -->
    205       <resource>
    206         <directory>${basedir}</directory>
    207         <targetPath>META-INF</targetPath>
    208         <includes>
    209           <include>NOTICE.txt</include>
    210           <include>LICENSE.txt</include>
    211         </includes>
    212       </resource>
    213     </resources>
    214     <!-- ensure test jars also get NOTICE & LICENSE files -->
    215     <testResources>
    216       <!-- This is the default setting from the super-pom -->
    217       <testResource>
    218         <directory>src/test/resources</directory>
    219       </testResource>
    220       <!-- hack to ensure the N&L appear in jars -->
    221       <testResource>
    222         <directory>${basedir}</directory>
    223         <targetPath>META-INF</targetPath>
    224         <includes>
    225           <include>NOTICE.txt</include>
    226           <include>LICENSE.txt</include>
    227         </includes>
    228       </testResource>
    229     </testResources>
    230     <pluginManagement>
    231       <plugins>
    232         <!-- org.apache.maven.plugins, alpha order by artifact id -->
    233         <plugin>
    234           <groupId>org.apache.maven.plugins</groupId>
    235           <artifactId>maven-antrun-plugin</artifactId>
    236           <version>1.7</version>
    237         </plugin>
    238         <plugin>
    239           <groupId>org.apache.maven.plugins</groupId>
    240           <artifactId>maven-assembly-plugin</artifactId>
    241           <version>2.4.1</version>
    242         </plugin>
    243         <plugin>
    244           <groupId>org.apache.maven.plugins</groupId>
    245           <artifactId>maven-clean-plugin</artifactId>
    246           <version>2.6</version>
    247         </plugin>
    248         <plugin>
    249           <groupId>org.apache.maven.plugins</groupId>
    250           <artifactId>maven-compiler-plugin</artifactId>
    251           <version>${commons.compiler.version}</version>
    252           <configuration>
    253             <source>${maven.compiler.source}</source>
    254             <target>${maven.compiler.target}</target>
    255             <encoding>${commons.encoding}</encoding>
    256             <fork>${commons.compiler.fork}</fork>
    257             <compilerVersion>${commons.compiler.compilerVersion}</compilerVersion>
    258             <executable>${commons.compiler.javac}</executable>
    259           </configuration>
    260         </plugin>
    261         <plugin>
    262           <groupId>org.apache.maven.plugins</groupId>
    263           <artifactId>maven-deploy-plugin</artifactId>
    264           <version>2.8.2</version>
    265         </plugin>
    266         <!-- Apache parent includes docck -->
    267         <plugin>
    268           <groupId>org.apache.maven.plugins</groupId>
    269           <artifactId>maven-gpg-plugin</artifactId>
    270           <version>1.5</version>
    271         </plugin>
    272         <plugin>
    273           <groupId>org.apache.maven.plugins</groupId>
    274           <artifactId>maven-install-plugin</artifactId>
    275           <version>2.5.2</version>
    276         </plugin>
    277         <!-- Apache parent: invoker -->
    278         <plugin>
    279           <groupId>org.apache.maven.plugins</groupId>
    280           <artifactId>maven-jar-plugin</artifactId>
    281           <version>2.5</version>
    282         </plugin>
    283         <plugin>
    284           <groupId>org.apache.maven.plugins</groupId>
    285           <artifactId>maven-javadoc-plugin</artifactId>
    286           <version>${commons.javadoc.version}</version>
    287           <configuration>
    288             <!-- keep only errors and warnings -->
    289             <quiet>true</quiet>
    290             <encoding>${commons.encoding}</encoding>
    291             <docEncoding>${commons.docEncoding}</docEncoding>
    292             <notimestamp>true</notimestamp>
    293             <links>
    294               <link>${commons.javadoc.java.link}</link>
    295               <link>${commons.javadoc.javaee.link}</link>
    296             </links>
    297             <archive>
    298               <manifest>
    299                 <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
    300                 <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
    301               </manifest>
    302             </archive>
    303           </configuration>
    304         </plugin>
    305         <plugin>
    306           <groupId>org.apache.maven.plugins</groupId>
    307           <artifactId>maven-release-plugin</artifactId>
    308           <version>2.5.1</version>
    309         </plugin>
    310         <plugin>
    311           <!-- TODO see above - find better way to add N&L files to jars and test jars -->
    312           <groupId>org.apache.maven.plugins</groupId>
    313           <artifactId>maven-remote-resources-plugin</artifactId>
    314           <!-- override old version from Apache pom 13 -->
    315           <version>1.5</version>
    316           <configuration>
    317             <!--
    318                 Apache parent POM automatically adds "LICENSE" and "NOTICE" files
    319                 to jars - duplicating the "LICENSE.txt" and "NOTICE.txt"
    320                 files that components already have.
    321              -->
    322             <skip>true</skip>
    323           </configuration>
    324         </plugin>
    325         <plugin>
    326           <groupId>org.apache.maven.plugins</groupId>
    327           <artifactId>maven-resources-plugin</artifactId>
    328           <version>2.7</version>
    329         </plugin>
    330         <!-- Apache parent: scm -->
    331         <plugin>
    332           <groupId>org.apache.maven.plugins</groupId>
    333           <artifactId>maven-site-plugin</artifactId>
    334           <version>${commons.site-plugin.version}</version>
    335           <configuration>
    336             <!-- don't deploy site with maven-site-plugin -->
    337             <skipDeploy>true</skipDeploy>
    338           </configuration>
    339         </plugin>
    340         <plugin>
    341           <groupId>org.apache.maven.plugins</groupId>
    342           <artifactId>maven-source-plugin</artifactId>
    343           <version>2.4</version>
    344           <configuration>
    345             <archive>
    346               <manifest>
    347                 <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
    348                 <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
    349               </manifest>
    350             </archive>
    351           </configuration>
    352         </plugin>
    353         <plugin>
    354           <groupId>org.apache.maven.plugins</groupId>
    355           <artifactId>maven-surefire-plugin</artifactId>
    356           <version>${commons.surefire.version}</version>
    357         </plugin>
    358         <!-- Other plugins, alpha order by groupId and artifactId -->
    359         <plugin>
    360           <groupId>org.apache.commons</groupId>
    361           <artifactId>commons-build-plugin</artifactId>
    362           <version>1.4</version>
    363           <configuration>
    364             <commons.release.name>${commons.release.name}</commons.release.name>
    365           </configuration>
    366         </plugin>
    367         <plugin>
    368           <groupId>org.apache.felix</groupId>
    369           <artifactId>maven-bundle-plugin</artifactId>
    370           <version>2.5.3</version>
    371           <inherited>true</inherited>
    372         </plugin>
    373         <plugin>
    374           <groupId>org.apache.rat</groupId>
    375           <artifactId>apache-rat-plugin</artifactId>
    376           <version>${commons.rat.version}</version>
    377         </plugin>
    378         <plugin>
    379           <groupId>org.codehaus.mojo</groupId>
    380           <artifactId>buildnumber-maven-plugin</artifactId>
    381           <version>1.3</version>
    382         </plugin>
    383         <plugin>
    384           <groupId>org.codehaus.mojo</groupId>
    385           <artifactId>clirr-maven-plugin</artifactId>
    386           <version>${commons.clirr.version}</version>
    387           <configuration>
    388             <minSeverity>${minSeverity}</minSeverity>
    389           </configuration>
    390         </plugin>
    391         <!-- Apache parent: plexus & modello -->
    392       </plugins>
    393     </pluginManagement>
    394     <plugins>
    395       <!-- org.apache.maven.plugins, alpha order by artifact id -->
    396       <plugin>
    397           <!-- Parent POM is released, so needs source archive for ASF mirrors -->
    398           <artifactId>maven-assembly-plugin</artifactId>
    399           <configuration>
    400               <descriptors>
    401                   <descriptor>src/main/assembly/src.xml</descriptor>
    402               </descriptors>
    403               <tarLongFileMode>gnu</tarLongFileMode>
    404           </configuration>
    405       </plugin>
    406       <plugin>
    407         <!--
    408           - Copy LICENSE.txt and NOTICE.txt so that they are included
    409           - in the -javadoc jar file for the component.
    410           -->
    411         <groupId>org.apache.maven.plugins</groupId>
    412         <artifactId>maven-antrun-plugin</artifactId>
    413         <executions>
    414           <execution>
    415             <id>javadoc.resources</id>
    416             <phase>generate-sources</phase>
    417             <goals>
    418               <goal>run</goal>
    419             </goals>
    420             <configuration>
    421               <target>
    422                 <copy todir="${project.build.directory}/apidocs/META-INF">
    423                   <fileset dir="${basedir}">
    424                     <include name="LICENSE.txt" />
    425                     <include name="NOTICE.txt" />
    426                   </fileset>
    427                 </copy>
    428               </target>
    429             </configuration>
    430           </execution>
    431         </executions>
    432       </plugin>
    433       <plugin>
    434         <groupId>org.apache.maven.plugins</groupId>
    435         <artifactId>maven-compiler-plugin</artifactId>
    436       </plugin>
    437       <!-- Unfortunately the much simpler
    438            <prerequisites><maven>3.0</maven></prerequisites>
    439            is not inherited so we have to use the enforcer plugin
    440       -->
    441       <plugin>
    442         <inherited>true</inherited>
    443         <groupId>org.apache.maven.plugins</groupId>
    444         <artifactId>maven-enforcer-plugin</artifactId>
    445         <version>1.3.1</version>
    446         <executions>
    447           <execution>
    448             <id>enforce-maven-3</id>
    449             <goals>
    450               <goal>enforce</goal>
    451             </goals>
    452             <configuration>
    453               <rules>
    454                 <requireMavenVersion>
    455                   <version>3.0.0</version>
    456                 </requireMavenVersion>
    457               </rules>
    458               <fail>true</fail>
    459             </configuration>
    460           </execution>
    461         </executions>
    462       </plugin>
    463       <plugin>
    464         <groupId>org.apache.maven.plugins</groupId>
    465         <artifactId>maven-jar-plugin</artifactId>
    466         <configuration>
    467           <archive>
    468             <manifestFile>${commons.manifestfile}</manifestFile>
    469             <manifestEntries>
    470               <Specification-Title>${project.name}</Specification-Title>
    471               <Specification-Version>${project.version}</Specification-Version>
    472               <Specification-Vendor>${project.organization.name}</Specification-Vendor>
    473               <Implementation-Title>${project.name}</Implementation-Title>
    474               <Implementation-Version>${project.version}</Implementation-Version>
    475               <Implementation-Vendor>${project.organization.name}</Implementation-Vendor>
    476               <Implementation-Vendor-Id>org.apache</Implementation-Vendor-Id>
    477               <Implementation-Build>${implementation.build}</Implementation-Build>
    478               <X-Compile-Source-JDK>${maven.compiler.source}</X-Compile-Source-JDK>
    479               <X-Compile-Target-JDK>${maven.compiler.target}</X-Compile-Target-JDK>
    480             </manifestEntries>
    481           </archive>
    482         </configuration>
    483       </plugin>
    484       <plugin>
    485         <groupId>org.apache.maven.plugins</groupId>
    486         <artifactId>maven-surefire-plugin</artifactId>
    487         <configuration>
    488           <jvm>${commons.surefire.java}</jvm>
    489         </configuration>
    490       </plugin>
    491       <!-- Other plugins, alpha order by groupId and artifactId -->
    492       <plugin>
    493         <groupId>org.apache.commons</groupId>
    494         <artifactId>commons-build-plugin</artifactId>
    495       </plugin>
    496       <plugin>
    497         <groupId>org.apache.felix</groupId>
    498         <artifactId>maven-bundle-plugin</artifactId>
    499         <configuration>
    500           <!--
    501             dummy entry to stop bundle plugin from picking up jar config and reporting
    502             WARNING: Duplicate name in Manifest
    503             See http://markmail.org/message/mpkl24wk3jrjhhjg
    504           -->
    505           <archive>
    506             <forced>true</forced>
    507           </archive>
    508           <excludeDependencies>true</excludeDependencies>
    509           <manifestLocation>${project.build.directory}/osgi</manifestLocation>
    510           <instructions>
    511             <!-- stops the "uses" clauses being added to "Export-Package" manifest entry -->
    512             <_nouses>true</_nouses>
    513             <!-- Stop the JAVA_1_n_HOME variables from being treated as headers by Bnd -->
    514             <_removeheaders>JAVA_1_3_HOME,JAVA_1_4_HOME,JAVA_1_5_HOME,JAVA_1_6_HOME,JAVA_1_7_HOME,JAVA_1_8_HOME</_removeheaders>
    515             <Bundle-SymbolicName>${commons.osgi.symbolicName}</Bundle-SymbolicName>
    516             <Export-Package>${commons.osgi.export}</Export-Package>
    517             <Private-Package>${commons.osgi.private}</Private-Package>
    518             <Import-Package>${commons.osgi.import}</Import-Package>
    519             <DynamicImport-Package>${commons.osgi.dynamicImport}</DynamicImport-Package>
    520             <Bundle-DocURL>${project.url}</Bundle-DocURL>
    521           </instructions>
    522         </configuration>
    523         <executions>
    524           <execution>
    525             <id>bundle-manifest</id>
    526             <phase>process-classes</phase>
    527             <goals>
    528               <goal>manifest</goal>
    529             </goals>
    530           </execution>
    531         </executions>
    532       </plugin>
    533       <!-- Needed for command-line access, e.g mvn apache-rat:rat and mvn apache-rat:check -->
    534       <plugin>
    535         <groupId>org.apache.rat</groupId>
    536         <artifactId>apache-rat-plugin</artifactId>
    537         <version>${commons.rat.version}</version>
    538         <!-- Should agree with config in reporting section -->
    539         <configuration>
    540           <!--
    541                If you wish to override this list in the component (child) pom, ensure you use
    542                    <excludes combine.children="merge">
    543                so that the child pom entries replace the parent entries
    544            -->
    545           <excludes combine.children="append">
    546             <exclude>site-content/**</exclude>
    547             <exclude>.checkstyle</exclude>
    548             <exclude>.fbprefs</exclude>
    549             <exclude>.pmd</exclude>
    550             <exclude>src/site/resources/download_*.cgi</exclude>
    551             <exclude>src/site/resources/profile.*</exclude>
    552           </excludes>
    553         </configuration>
    554       </plugin>
    555 
    556       <plugin>
    557         <groupId>org.apache.maven.plugins</groupId>
    558         <artifactId>maven-scm-publish-plugin</artifactId>
    559         <version>${commons.scm-publish.version}</version>
    560         <configuration>
    561           <content>${project.reporting.outputDirectory}</content>
    562           <pubScmUrl>scm:svn:${commons.scmPubUrl}</pubScmUrl>
    563           <checkoutDirectory>${commons.scmPubCheckoutDirectory}</checkoutDirectory>
    564           <serverId>${commons.scmPubServer}</serverId>
    565           <tryUpdate>true</tryUpdate>
    566         </configuration>
    567         <executions>
    568           <execution>
    569             <id>scm-publish</id>
    570             <phase>site-deploy</phase><!-- deploy site with maven-scm-publish-plugin -->
    571             <goals>
    572               <goal>publish-scm</goal>
    573             </goals>
    574           </execution>
    575         </executions>
    576       </plugin>
    577 
    578     </plugins>
    579   </build>
    580 
    581   <reporting>
    582     <!-- N.B. plugins defined here in the <reporting> section ignore what's defined in <pluginManagement>
    583          in the <build> section above, so we have to define the versions here. -->
    584     <plugins>
    585       <!-- org.apache.maven.plugins, alpha order by artifact id -->
    586       <plugin>
    587         <groupId>org.apache.maven.plugins</groupId>
    588         <artifactId>maven-changes-plugin</artifactId>
    589         <version>${commons.changes.version}</version>
    590         <configuration>
    591           <xmlPath>${basedir}/src/changes/changes.xml</xmlPath>
    592           <columnNames>Fix Version,Key,Component,Summary,Type,Resolution,Status</columnNames>
    593           <!-- Sort cols in natural order when using JQL for JIRA 5.1 -->
    594           <sortColumnNames>Fix Version DESC,Type,Key DESC</sortColumnNames>
    595           <resolutionIds>Fixed</resolutionIds>
    596           <statusIds>Resolved,Closed</statusIds>
    597           <!-- Don't include sub-task -->
    598           <typeIds>Bug,New Feature,Task,Improvement,Wish,Test</typeIds>
    599           <!-- For JIRA >= 5.1 -->
    600           <useJql>true</useJql>
    601         </configuration>
    602         <reportSets>
    603           <reportSet>
    604             <reports>
    605               <report>changes-report</report>
    606               <report>jira-report</report>
    607             </reports>
    608           </reportSet>
    609         </reportSets>
    610       </plugin>
    611       <plugin>
    612         <groupId>org.apache.maven.plugins</groupId>
    613         <artifactId>maven-javadoc-plugin</artifactId>
    614         <version>${commons.javadoc.version}</version>
    615         <configuration>
    616           <!-- keep only errors and warnings -->
    617           <quiet>true</quiet>
    618           <source>${maven.compiler.source}</source>
    619           <encoding>${commons.encoding}</encoding>
    620           <docencoding>${commons.docEncoding}</docencoding>
    621           <notimestamp>true</notimestamp>
    622           <linksource>true</linksource>
    623           <!-- prevent svnpub to be too much noisy -->
    624           <notimestamp>true</notimestamp>
    625           <links>
    626             <link>${commons.javadoc.java.link}</link>
    627             <link>${commons.javadoc.javaee.link}</link>
    628           </links>
    629         </configuration>
    630         <!-- Suppress test Javadocs -->
    631         <reportSets>
    632           <reportSet>
    633             <id>default</id>
    634             <reports>
    635               <report>javadoc</report>
    636             </reports>
    637           </reportSet>
    638         </reportSets>
    639       </plugin>
    640       <plugin>
    641         <groupId>org.apache.maven.plugins</groupId>
    642         <artifactId>maven-jxr-plugin</artifactId>
    643         <version>${commons.jxr.version}</version>
    644       </plugin>
    645       <plugin>
    646         <groupId>org.apache.maven.plugins</groupId>
    647         <artifactId>maven-project-info-reports-plugin</artifactId>
    648         <version>${commons.project-info.version}</version>
    649         <!--
    650             Unfortunately it does not appear to be possible to override
    651             reports configured in a parent POM.
    652             See https://jira.codehaus.org/browse/MPIR-241
    653             and https://issues.apache.org/jira/browse/MPOM-32
    654             So we define here all those reports that are suitable for
    655             all components.
    656             Components can add extra reports if they wish, but cannot disable any.
    657         -->
    658         <reportSets>
    659           <reportSet>
    660             <reports>
    661               <report>index</report>
    662               <report>summary</report>
    663               <report>modules</report>
    664 <!--          <report>license</report>               site must link to ASF page instead  -->
    665               <report>project-team</report>
    666               <report>scm</report>
    667               <report>issue-tracking</report>
    668               <report>mailing-list</report>
    669               <report>dependency-info</report>
    670               <report>dependency-management</report>
    671               <report>dependencies</report>
    672               <report>dependency-convergence</report>
    673               <report>cim</report>
    674 <!--          <report>plugin-management</report>      not very useful for end users -->
    675 <!--          <report>plugins</report>                not very useful for end users -->
    676               <report>distribution-management</report>
    677             </reports>
    678           </reportSet>
    679         </reportSets>
    680       </plugin>
    681       <plugin>
    682         <groupId>org.apache.maven.plugins</groupId>
    683         <artifactId>maven-site-plugin</artifactId>
    684         <version>${commons.site-plugin.version}</version>
    685         <configuration>
    686           <!-- Exclude the navigation file for Maven 1 sites
    687                and the changes file used by the changes-plugin,
    688                as they interfere with the site generation. -->
    689           <moduleExcludes>
    690             <xdoc>navigation.xml,changes.xml</xdoc>
    691           </moduleExcludes>
    692         </configuration>
    693       </plugin>
    694       <plugin>
    695         <groupId>org.apache.maven.plugins</groupId>
    696         <artifactId>maven-surefire-report-plugin</artifactId>
    697         <version>${commons.surefire.version}</version>
    698         <configuration>
    699           <aggregate>${commons.surefire-report.aggregate}</aggregate>
    700         </configuration>
    701       </plugin>
    702       <!-- Other plugins, alpha order by groupId and artifactId -->
    703       <plugin>
    704         <groupId>org.apache.rat</groupId>
    705         <artifactId>apache-rat-plugin</artifactId>
    706         <version>${commons.rat.version}</version>
    707         <!-- Should agree with config in build section -->
    708         <configuration>
    709           <!--
    710                If you wish to override this list in the component (child) pom, ensure you use
    711                    <excludes combine.children="merge">
    712                so that the child pom entries replace the parent entries
    713            -->
    714           <excludes combine.children="append">
    715             <exclude>site-content/**</exclude>
    716             <exclude>.pmd</exclude>
    717             <exclude>src/site/resources/download_*.cgi</exclude>
    718             <exclude>src/site/resources/profile.*</exclude>
    719           </excludes>
    720         </configuration>
    721       </plugin>
    722       <plugin>
    723           <groupId>org.codehaus.mojo</groupId>
    724           <artifactId>clirr-maven-plugin</artifactId>
    725           <version>${commons.clirr.version}</version>
    726           <configuration>
    727               <minSeverity>${minSeverity}</minSeverity>
    728           </configuration>
    729       </plugin>
    730       <plugin>
    731         <groupId>org.codehaus.mojo</groupId>
    732         <artifactId>jdepend-maven-plugin</artifactId>
    733         <version>${commons.jdepend.version}</version>
    734       </plugin>
    735     </plugins>
    736   </reporting>
    737 
    738   <profiles>
    739 
    740     <profile>
    741       <id>jacoco</id>
    742       <activation>
    743         <!--
    744             N.B. in spite of what the Maven docs may say,
    745             activation conditions are ORed together, see:
    746             http://jira.codehaus.org/browse/MNG-4565
    747             Fairly useless, but that's what was done in
    748             http://jira.codehaus.org/browse/MNG-3106
    749 
    750             So we cannot also check for Java 1.5+
    751             This should not be a problem now as the profile is optional.
    752             Components that still target Java 1.4 or earlier
    753             just need to ensure they don't use JaCoCo by default.
    754         -->
    755         <file>
    756           <exists>src/site/resources/profile.jacoco</exists>
    757         </file>
    758       </activation>
    759       <build>
    760         <plugins>
    761           <plugin>
    762           <groupId>org.jacoco</groupId>
    763           <artifactId>jacoco-maven-plugin</artifactId>
    764           <version>${commons.jacoco.version}</version>
    765           <!-- Note that since JaCoCo relies on an agent to perform tests,
    766                it changes the surefire arguments line. If a component also
    767                needs to change the argument line of maven-surefire-plugin,
    768                then it must add ${argLine} property (which is set by JaCoCo)
    769                in the argLine configuration element of maven-surefire-plugin
    770                to preserve JaCoCo settings. -->
    771           <executions>
    772             <execution>
    773               <id>prepare-agent</id>
    774               <phase>process-test-classes</phase>
    775               <goals>
    776                 <goal>prepare-agent</goal>
    777               </goals>
    778             </execution>
    779             <execution>
    780               <id>report</id>
    781               <phase>site</phase>
    782               <goals>
    783                 <goal>report</goal>
    784               </goals>
    785             </execution>
    786             <execution>
    787               <id>check</id>
    788               <goals>
    789                 <goal>check</goal>
    790               </goals>
    791               <configuration>
    792                 <rules>
    793                   <rule>
    794                     <element>BUNDLE</element>
    795                     <limits>
    796                       <limit>
    797                         <counter>CLASS</counter>
    798                         <value>COVEREDRATIO</value>
    799                         <minimum>${commons.jacoco.classRatio}</minimum>
    800                       </limit>
    801                       <limit>
    802                         <counter>INSTRUCTION</counter>
    803                         <value>COVEREDRATIO</value>
    804                         <minimum>${commons.jacoco.instructionRatio}</minimum>
    805                       </limit>
    806                       <limit>
    807                         <counter>METHOD</counter>
    808                         <value>COVEREDRATIO</value>
    809                         <minimum>${commons.jacoco.methodRatio}</minimum>
    810                       </limit>
    811                       <limit>
    812                         <counter>BRANCH</counter>
    813                         <value>COVEREDRATIO</value>
    814                         <minimum>${commons.jacoco.branchRatio}</minimum>
    815                       </limit>
    816                       <limit>
    817                         <counter>LINE</counter>
    818                         <value>COVEREDRATIO</value>
    819                         <minimum>${commons.jacoco.lineRatio}</minimum>
    820                       </limit>
    821                       <limit>
    822                         <counter>COMPLEXITY</counter>
    823                         <value>COVEREDRATIO</value>
    824                         <minimum>${commons.jacoco.complexityRatio}</minimum>
    825                       </limit>
    826                     </limits>
    827                   </rule>
    828                 </rules>
    829                 <haltOnFailure>${commons.jacoco.haltOnFailure}</haltOnFailure>
    830               </configuration>
    831             </execution>
    832           </executions>
    833           </plugin>
    834         </plugins>
    835       </build>
    836       <reporting>
    837         <plugins>
    838           <plugin>
    839             <groupId>org.jacoco</groupId>
    840             <artifactId>jacoco-maven-plugin</artifactId>
    841             <version>${commons.jacoco.version}</version>
    842           </plugin>
    843         </plugins>
    844       </reporting>
    845     </profile>
    846 
    847     <profile>
    848       <id>cobertura</id>
    849       <activation>
    850         <file>
    851           <exists>src/site/resources/profile.cobertura</exists>
    852         </file>
    853       </activation>
    854       <reporting>
    855         <plugins>
    856           <plugin>
    857             <groupId>org.codehaus.mojo</groupId>
    858             <artifactId>cobertura-maven-plugin</artifactId>
    859             <version>${commons.cobertura.version}</version>
    860           </plugin>
    861         </plugins>
    862       </reporting>
    863     </profile>
    864 
    865     <!--
    866          Profile for Commons releases via Nexus.
    867          Assembles artifacts, creates source and javadoc jars, signs them and adds hashes.
    868     -->
    869     <profile>
    870       <id>release</id>
    871       <build>
    872         <plugins>
    873           <!-- We want to sign the artifact, the POM, and all attached artifacts -->
    874           <plugin>
    875             <artifactId>maven-gpg-plugin</artifactId>
    876             <configuration>
    877               <passphrase>${gpg.passphrase}</passphrase>
    878             </configuration>
    879             <executions>
    880               <execution>
    881                 <id>sign-artifacts</id>
    882                 <phase>verify</phase>
    883                 <goals>
    884                   <goal>sign</goal>
    885                 </goals>
    886               </execution>
    887             </executions>
    888           </plugin>
    889           <plugin>
    890             <artifactId>maven-install-plugin</artifactId>
    891             <configuration>
    892               <createChecksum>true</createChecksum>
    893             </configuration>
    894           </plugin>
    895           <plugin>
    896             <artifactId>maven-source-plugin</artifactId>
    897             <executions>
    898               <execution>
    899                 <id>create-source-jar</id>
    900                 <goals>
    901                   <goal>jar</goal>
    902                   <goal>test-jar</goal>
    903                 </goals>
    904               </execution>
    905             </executions>
    906           </plugin>
    907           <plugin>
    908             <artifactId>maven-jar-plugin</artifactId>
    909             <executions>
    910               <execution>
    911                 <goals>
    912                   <goal>test-jar</goal>
    913                 </goals>
    914                 <configuration>
    915                  <!-- Avoids an error when releasing the parent pom -->
    916                  <skipIfEmpty>true</skipIfEmpty>
    917                 </configuration>
    918               </execution>
    919             </executions>
    920           </plugin>
    921           <plugin>
    922             <artifactId>maven-release-plugin</artifactId>
    923             <configuration>
    924               <!-- Pass these arguments to the deploy plugin. -->
    925               <arguments>-Prelease</arguments>
    926             </configuration>
    927           </plugin>
    928           <plugin>
    929             <artifactId>maven-javadoc-plugin</artifactId>
    930             <executions>
    931               <execution>
    932                 <id>create-javadoc-jar</id>
    933                 <goals>
    934                   <goal>javadoc</goal>
    935                   <goal>jar</goal>
    936                 </goals>
    937                 <phase>package</phase>
    938               </execution>
    939             </executions>
    940             <configuration>
    941               <source>${maven.compiler.source}</source>
    942             </configuration>
    943           </plugin>
    944           <plugin>
    945             <artifactId>maven-assembly-plugin</artifactId>
    946             <inherited>true</inherited>
    947             <executions>
    948               <execution>
    949                 <goals>
    950                   <goal>single</goal>
    951                 </goals>
    952                 <phase>package</phase>
    953               </execution>
    954             </executions>
    955           </plugin>
    956         </plugins>
    957       </build>
    958     </profile>
    959 
    960      <!--
    961        profile to update the Apache parent pom profile of the same name
    962        to better suit the requirements of Apache Commons.
    963        [Requires further work]
    964      -->
    965     <profile>
    966       <id>apache-release</id>
    967       <build>
    968         <plugins>
    969           <plugin>
    970             <artifactId>maven-release-plugin</artifactId>
    971             <configuration>
    972                 <releaseProfiles>apache-release</releaseProfiles>
    973             </configuration>
    974           </plugin>
    975           <plugin>
    976             <groupId>org.apache.maven.plugins</groupId>
    977             <artifactId>maven-source-plugin</artifactId>
    978             <executions>
    979               <execution>
    980                 <id>attach-test-sources</id>
    981                 <goals>
    982                   <goal>test-jar</goal>
    983                 </goals>
    984               </execution>
    985             </executions>
    986           </plugin>
    987           <plugin>
    988             <artifactId>maven-install-plugin</artifactId>
    989             <configuration>
    990               <createChecksum>true</createChecksum>
    991             </configuration>
    992           </plugin>
    993           <plugin>
    994             <groupId>org.apache.maven.plugins</groupId>
    995             <artifactId>maven-jar-plugin</artifactId>
    996             <executions>
    997               <execution>
    998                 <goals>
    999                   <goal>test-jar</goal>
   1000                 </goals>
   1001               </execution>
   1002             </executions>
   1003           </plugin>
   1004         </plugins>
   1005       </build>
   1006     </profile>
   1007 
   1008     <!--
   1009        Profile for running the build using JDK 1.3
   1010        (JAVA_1_3_HOME needs to be defined, e.g. in settings.xml or an environment variable)
   1011       -->
   1012     <profile>
   1013       <id>java-1.3</id>
   1014       <properties>
   1015         <commons.compiler.fork>true</commons.compiler.fork>
   1016         <commons.compiler.compilerVersion>1.3</commons.compiler.compilerVersion>
   1017         <commons.compiler.javac>${JAVA_1_3_HOME}/bin/javac</commons.compiler.javac>
   1018         <commons.surefire.java>${JAVA_1_3_HOME}/bin/java</commons.surefire.java>
   1019       </properties>
   1020     </profile>
   1021 
   1022     <!--
   1023        Profile for running the build using JDK 1.4
   1024        (JAVA_1_4_HOME needs to be defined, e.g. in settings.xml or an environment variable)
   1025       -->
   1026     <profile>
   1027       <id>java-1.4</id>
   1028       <properties>
   1029         <commons.compiler.fork>true</commons.compiler.fork>
   1030         <commons.compiler.compilerVersion>1.4</commons.compiler.compilerVersion>
   1031         <commons.compiler.javac>${JAVA_1_4_HOME}/bin/javac</commons.compiler.javac>
   1032         <commons.surefire.java>${JAVA_1_4_HOME}/bin/java</commons.surefire.java>
   1033       </properties>
   1034     </profile>
   1035 
   1036     <!--
   1037        Profile for running the build using JDK 1.5
   1038        (JAVA_1_5_HOME needs to be defined, e.g. in settings.xml or an environment variable)
   1039       -->
   1040     <profile>
   1041       <id>java-1.5</id>
   1042       <properties>
   1043         <commons.compiler.fork>true</commons.compiler.fork>
   1044         <commons.compiler.compilerVersion>1.5</commons.compiler.compilerVersion>
   1045         <commons.compiler.javac>${JAVA_1_5_HOME}/bin/javac</commons.compiler.javac>
   1046         <commons.surefire.java>${JAVA_1_5_HOME}/bin/java</commons.surefire.java>
   1047       </properties>
   1048     </profile>
   1049 
   1050     <!--
   1051        Profile for running the build using JDK 1.6
   1052        (JAVA_1_6_HOME needs to be defined, e.g. in settings.xml or an environment variable)
   1053       -->
   1054     <profile>
   1055       <id>java-1.6</id>
   1056       <properties>
   1057         <commons.compiler.fork>true</commons.compiler.fork>
   1058         <commons.compiler.compilerVersion>1.6</commons.compiler.compilerVersion>
   1059         <commons.compiler.javac>${JAVA_1_6_HOME}/bin/javac</commons.compiler.javac>
   1060         <commons.surefire.java>${JAVA_1_6_HOME}/bin/java</commons.surefire.java>
   1061       </properties>
   1062     </profile>
   1063 
   1064     <!--
   1065        Profile for running the build using JDK 1.7
   1066        (JAVA_1_7_HOME needs to be defined, e.g. in settings.xml or an environment variable)
   1067       -->
   1068     <profile>
   1069       <id>java-1.7</id>
   1070       <properties>
   1071         <commons.compiler.fork>true</commons.compiler.fork>
   1072         <commons.compiler.compilerVersion>1.7</commons.compiler.compilerVersion>
   1073         <commons.compiler.javac>${JAVA_1_7_HOME}/bin/javac</commons.compiler.javac>
   1074         <commons.surefire.java>${JAVA_1_7_HOME}/bin/java</commons.surefire.java>
   1075       </properties>
   1076     </profile>
   1077 
   1078     <!--
   1079        Profile for running the build using JDK 1.8
   1080        (JAVA_1_8_HOME needs to be defined, e.g. in settings.xml or an environment variable)
   1081       -->
   1082     <profile>
   1083       <id>java-1.8</id>
   1084       <properties>
   1085         <commons.compiler.fork>true</commons.compiler.fork>
   1086         <commons.compiler.compilerVersion>1.8</commons.compiler.compilerVersion>
   1087         <commons.compiler.javac>${JAVA_1_8_HOME}/bin/javac</commons.compiler.javac>
   1088         <commons.surefire.java>${JAVA_1_8_HOME}/bin/java</commons.surefire.java>
   1089       </properties>
   1090     </profile>
   1091 
   1092     <!--
   1093        Profile for running the build using JDK 1.9
   1094        (JAVA_1_9_HOME needs to be defined, e.g. in settings.xml or an environment variable)
   1095       -->
   1096     <profile>
   1097       <id>java-1.9</id>
   1098       <properties>
   1099         <commons.compiler.fork>true</commons.compiler.fork>
   1100         <commons.compiler.compilerVersion>1.9</commons.compiler.compilerVersion>
   1101         <commons.compiler.javac>${JAVA_1_9_HOME}/bin/javac</commons.compiler.javac>
   1102         <commons.surefire.java>${JAVA_1_9_HOME}/bin/java</commons.surefire.java>
   1103       </properties>
   1104     </profile>
   1105 
   1106     <!-- N.B. when adding new java profiles, be sure to update
   1107          the _removeheaders list in the maven_bundle_plugin configuration -->
   1108 
   1109     <!--
   1110      | Profile to allow testing of deploy phase
   1111      | e.g.
   1112      | mvn deploy -Ptest-deploy -Prelease -Dgpg.skip
   1113      -->
   1114     <profile>
   1115       <id>test-deploy</id>
   1116       <properties>
   1117         <altDeploymentRepository>id::default::file:target/deploy</altDeploymentRepository>
   1118       </properties>
   1119     </profile>
   1120 
   1121     <!--
   1122       Profile to build all Commons "proper" components.
   1123 
   1124       The trunks of all "proper" components can be checked out using:
   1125           https://svn.apache.org/repos/asf/commons/trunks-proper/
   1126 
   1127       This profile is a convenience which can be used, for example, to build all the component sites:
   1128           mvn -Ptrunks-proper site
   1129 
   1130       or, to clean up:
   1131           mvn -Ptrunks-proper clean
   1132 
   1133       see http://issues.apache.org/jira/browse/COMMONSSITE-30
   1134       -->
   1135     <profile>
   1136       <id>trunks-proper</id>
   1137       <modules>
   1138         <!-- not yet using mvn module>../attributes</module-->
   1139         <module>../bcel</module>
   1140         <module>../beanutils</module>
   1141         <module>../betwixt</module>
   1142         <module>../chain</module>
   1143         <module>../cli</module>
   1144         <module>../codec</module>
   1145         <module>../collections</module>
   1146         <module>../compress</module>
   1147         <module>../configuration</module>
   1148         <module>../daemon</module>
   1149         <module>../dbcp</module>
   1150         <module>../dbutils</module>
   1151         <module>../digester</module>
   1152         <module>../discovery</module>
   1153         <module>../el</module>
   1154         <module>../email</module>
   1155         <module>../exec</module>
   1156         <module>../fileupload</module>
   1157         <module>../functor</module>
   1158         <module>../imaging</module>
   1159         <module>../io</module>
   1160         <module>../jci</module>
   1161         <module>../jcs</module>
   1162         <!-- not yet using mvn module>../jelly</module-->
   1163         <module>../jexl</module>
   1164         <module>../jxpath</module>
   1165         <module>../lang</module>
   1166         <module>../launcher</module>
   1167         <module>../logging</module>
   1168         <module>../math</module>
   1169         <module>../modeler</module>
   1170         <module>../net</module>
   1171         <module>../ognl</module>
   1172         <module>../pool</module>
   1173         <module>../primitives</module>
   1174         <module>../proxy</module>
   1175         <module>../scxml</module>
   1176         <!-- not yet using mvn module>../transaction</module-->
   1177         <module>../validator</module>
   1178         <module>../vfs</module>
   1179       </modules>
   1180     </profile>
   1181 
   1182     <!--
   1183         Configure site plugin to support both Maven2 and Maven3, see:
   1184         http://maven.apache.org/plugins/maven-site-plugin/maven-3.html#Using_the_same_version_of_maven-site-plugin_for_both_Maven_2_and_Maven_3
   1185     -->
   1186     <profile>
   1187       <id>maven-3</id>
   1188       <activation>
   1189         <file>
   1190           <!--  The basedir expression is only recognized by Maven 3.x (see MNG-2363) -->
   1191           <exists>${basedir}</exists>
   1192         </file>
   1193       </activation>
   1194       <build>
   1195         <plugins>
   1196           <plugin>
   1197             <artifactId>maven-site-plugin</artifactId>
   1198             <dependencies>
   1199               <dependency>
   1200                   <!-- add support for ssh/scp -->
   1201                   <groupId>org.apache.maven.wagon</groupId>
   1202                   <artifactId>wagon-ssh</artifactId>
   1203                   <version>${commons.wagon-ssh.version}</version>
   1204                 </dependency>
   1205               </dependencies>
   1206             <executions>
   1207               <execution>
   1208                 <id>attach-descriptor</id>
   1209                 <goals>
   1210                   <goal>attach-descriptor</goal>
   1211                 </goals>
   1212               </execution>
   1213             </executions>
   1214           </plugin>
   1215         </plugins>
   1216       </build>
   1217     </profile>
   1218 
   1219     <profile>
   1220       <!--
   1221           Generate release notes in top-level directory from src/changes/changes.xml
   1222           Usage:
   1223           mvn changes:announcement-generate -Prelease-notes [-Dchanges.version=nnn]
   1224 
   1225           Defining changes.version allows one to create the RN without first removing the SNAPSHOT suffix.
   1226 
   1227           Requires file src/changes/release-notes.vm.
   1228           A sample template is available from:
   1229           https://svn.apache.org/repos/asf/commons/proper/commons-parent/trunk/src/changes/release-notes.vm
   1230        -->
   1231       <id>release-notes</id>
   1232       <build>
   1233         <plugins>
   1234            <plugin>
   1235             <groupId>org.apache.maven.plugins</groupId>
   1236             <artifactId>maven-changes-plugin</artifactId>
   1237             <version>${commons.changes.version}</version>
   1238             <configuration>
   1239               <template>release-notes.vm</template>
   1240               <templateDirectory>src/changes</templateDirectory>
   1241               <runOnlyAtExecutionRoot>true</runOnlyAtExecutionRoot>
   1242               <outputDirectory>.</outputDirectory>
   1243               <announcementFile>RELEASE-NOTES.txt</announcementFile>
   1244               <announceParameters>
   1245                 <releaseVersion>${commons.release.version}</releaseVersion>
   1246               </announceParameters>
   1247             </configuration>
   1248             <executions>
   1249               <execution>
   1250                 <id>create-release-notes</id>
   1251                 <phase>generate-resources</phase>
   1252                 <goals>
   1253                   <goal>announcement-generate</goal>
   1254                 </goals>
   1255               </execution>
   1256             </executions>
   1257           </plugin>
   1258         </plugins>
   1259       </build>
   1260     </profile>
   1261 
   1262     <!--
   1263         Automatically run the buildnumber plugin unless the buildNumber.skip property is defined as true
   1264     -->
   1265     <profile>
   1266      <id>svn-buildnumber</id>
   1267      <activation>
   1268        <property><name>!buildNumber.skip</name><value>!true</value></property>
   1269      </activation>
   1270      <build>
   1271        <plugins>
   1272          <plugin>
   1273            <groupId>org.codehaus.mojo</groupId>
   1274            <artifactId>buildnumber-maven-plugin</artifactId>
   1275            <executions>
   1276              <execution>
   1277                <phase>generate-resources</phase>
   1278                <goals>
   1279                  <goal>create</goal>
   1280                </goals>
   1281              </execution>
   1282            </executions>
   1283            <configuration>
   1284              <!-- Use committed revision so it does not change every time svn update is run -->
   1285              <useLastCommittedRevision>true</useLastCommittedRevision>
   1286              <!-- default revision number if unavailable -->
   1287              <revisionOnScmFailure>??????</revisionOnScmFailure>
   1288              <doCheck>false</doCheck>
   1289              <doUpdate>false</doUpdate>
   1290            </configuration>
   1291          </plugin>
   1292        </plugins>
   1293      </build>
   1294    </profile>
   1295    <!-- optional profile to use javasvn instead of the SVN CLI for the buildNumber plugin -->
   1296    <profile>
   1297      <id>javasvn</id>
   1298      <build>
   1299        <plugins>
   1300          <plugin>
   1301            <groupId>org.codehaus.mojo</groupId>
   1302            <artifactId>buildnumber-maven-plugin</artifactId>
   1303            <configuration>
   1304              <providerImplementations>
   1305                <svn>javasvn</svn>
   1306              </providerImplementations>
   1307            </configuration>
   1308          </plugin>
   1309        </plugins>
   1310      </build>
   1311    </profile>
   1312     <profile>
   1313       <id>jdk7-findbugs</id>
   1314       <activation>
   1315         <jdk>[1.7,)</jdk>
   1316       </activation>
   1317       <properties>
   1318         <commons.findbugs.version>3.0.0</commons.findbugs.version>
   1319       </properties>
   1320     </profile>
   1321 
   1322   </profiles>
   1323 
   1324   <properties>
   1325     <!-- configuration bits for cutting a release candidate, must be overridden by components -->
   1326     <commons.release.version>${project.version}</commons.release.version>
   1327     <commons.rc.version>RC1</commons.rc.version>
   1328     <commons.jira.id>COMMONSSITE</commons.jira.id>
   1329 
   1330     <!-- Default configuration for compiler source and target JVM -->
   1331     <!-- Do NOT change this; it must remain as 1.3 -->
   1332     <maven.compiler.source>1.3</maven.compiler.source>
   1333     <maven.compiler.target>1.3</maven.compiler.target>
   1334 
   1335     <!-- compiler and surefire plugin settings for "java" profiles -->
   1336     <commons.compiler.fork>false</commons.compiler.fork>
   1337     <commons.compiler.compilerVersion />
   1338     <commons.compiler.javac />
   1339     <commons.surefire.java />
   1340 
   1341     <!-- plugin versions (allows same value in reporting and build sections) -->
   1342     <commons.surefire.version>2.17</commons.surefire.version>
   1343     <commons.surefire-report.version>2.17</commons.surefire-report.version>
   1344     <!-- 2.9.1 includes fix for Javadoc vulnerability (CVE-2013-1571, VU#225657) MJAVADOC-370 -->
   1345     <commons.javadoc.version>2.10.1</commons.javadoc.version>
   1346     <commons.rat.version>0.11</commons.rat.version>
   1347     <commons.changes.version>2.11</commons.changes.version>
   1348     <commons.clirr.version>2.6.1</commons.clirr.version>
   1349     <commons.jxr.version>2.4</commons.jxr.version>
   1350     <commons.project-info.version>2.7</commons.project-info.version>
   1351     <commons.wagon-ssh.version>2.6</commons.wagon-ssh.version>
   1352     <commons.site-plugin.version>3.4</commons.site-plugin.version>
   1353     <commons.jacoco.version>0.7.2.201409121644</commons.jacoco.version>
   1354     <commons.cobertura.version>2.6</commons.cobertura.version>
   1355     <commons.jdepend.version>2.0</commons.jdepend.version>
   1356     <commons.compiler.version>3.2</commons.compiler.version>
   1357     <commons.scm-publish.version>1.1</commons.scm-publish.version>
   1358     <commons.findbugs.version>2.5.5</commons.findbugs.version>
   1359 
   1360     <!-- Default values for the download-page generation by commons-build-plugin -->
   1361     <commons.release.name>${project.artifactId}-${commons.release.version}</commons.release.name>
   1362     <commons.release.desc />
   1363     <commons.binary.suffix>-bin</commons.binary.suffix>
   1364     <commons.release.2.name>${project.artifactId}-${commons.release.2.version}</commons.release.2.name>
   1365     <commons.release.2.desc />
   1366     <commons.release.2.binary.suffix>-bin</commons.release.2.binary.suffix>
   1367     <commons.release.3.name>${project.artifactId}-${commons.release.3.version}</commons.release.3.name>
   1368     <commons.release.3.desc />
   1369     <commons.release.3.binary.suffix>-bin</commons.release.3.binary.suffix>
   1370 
   1371     <!-- Default values for the jacoco-maven-plugin reports -->
   1372     <commons.jacoco.classRatio>1.00</commons.jacoco.classRatio>
   1373     <commons.jacoco.instructionRatio>0.90</commons.jacoco.instructionRatio>
   1374     <commons.jacoco.methodRatio>0.95</commons.jacoco.methodRatio>
   1375     <commons.jacoco.branchRatio>0.85</commons.jacoco.branchRatio>
   1376     <commons.jacoco.complexityRatio>0.85</commons.jacoco.complexityRatio>
   1377     <commons.jacoco.lineRatio>0.90</commons.jacoco.lineRatio>
   1378     <commons.jacoco.haltOnFailure>false</commons.jacoco.haltOnFailure>
   1379 
   1380     <!-- Commons Component Id -->
   1381     <commons.componentid>${project.artifactId}</commons.componentid>
   1382 
   1383     <!-- Configuration properties for the OSGi maven-bundle-plugin -->
   1384     <commons.osgi.symbolicName>org.apache.commons.${commons.componentid}</commons.osgi.symbolicName>
   1385     <commons.osgi.export>org.apache.commons.*;version=${project.version};-noimport:=true</commons.osgi.export>
   1386     <commons.osgi.import>*</commons.osgi.import>
   1387     <commons.osgi.dynamicImport />
   1388     <commons.osgi.private />
   1389 
   1390     <!-- location of any manifest file used by maven-jar-plugin -->
   1391     <commons.manifestfile>${project.build.directory}/osgi/MANIFEST.MF</commons.manifestfile>
   1392 
   1393     <!--
   1394       Make the deployment protocol pluggable. This allows to switch to
   1395       other protocols like scpexe, which some users prefer over scp.
   1396     -->
   1397     <commons.deployment.protocol>scp</commons.deployment.protocol>
   1398 
   1399     <!--
   1400       Encoding of Java source files: Make sure, that the compiler and
   1401       the javadoc generator use the right encoding. Subprojects may
   1402       overwrite this, if they are using another encoding.
   1403     -->
   1404     <commons.encoding>iso-8859-1</commons.encoding>
   1405     <commons.docEncoding>${commons.encoding}</commons.docEncoding>
   1406     <!-- Define encoding for filtering -->
   1407     <project.build.sourceEncoding>${commons.encoding}</project.build.sourceEncoding>
   1408     <project.reporting.outputEncoding>${commons.encoding}</project.reporting.outputEncoding>
   1409 
   1410     <!-- Javadoc link to Java API.  Default is Java 1.7; components can override to other versions -->
   1411     <commons.javadoc.java.link>http://docs.oracle.com/javase/7/docs/api/</commons.javadoc.java.link>
   1412     <commons.javadoc.javaee.link>http://docs.oracle.com/javaee/6/api/</commons.javadoc.javaee.link>
   1413 
   1414     <!-- build meta inf -->
   1415     <maven.build.timestamp.format>yyyy-MM-dd HH:mm:ssZ</maven.build.timestamp.format>
   1416     <implementation.build>${scmBranch}@r${buildNumber}; ${maven.build.timestamp}</implementation.build>
   1417 
   1418     <!-- Allow Clirr severity to be overriden by the command-line option -DminSeverity=level -->
   1419     <minSeverity>info</minSeverity>
   1420 
   1421     <!-- Allow surefire-report aggregation to be easily configured for multi-module projects -->
   1422     <commons.surefire-report.aggregate>false</commons.surefire-report.aggregate>
   1423 
   1424     <!-- scm publish plugin configuration -->
   1425     <commons.site.cache>${user.home}/commons-sites</commons.site.cache>
   1426     <!-- value modules can override it -->
   1427     <commons.site.path>${project.artifactId}</commons.site.path>
   1428 
   1429     <commons.scmPubUrl>https://svn.apache.org/repos/infra/websites/production/commons/content/proper/${project.artifactId}</commons.scmPubUrl>
   1430     <commons.scmPubCheckoutDirectory>${commons.site.cache}/${commons.site.path}</commons.scmPubCheckoutDirectory>
   1431     <commons.scmPubServer>commons.site</commons.scmPubServer>
   1432 
   1433     <sonar.host.url>https://analysis.apache.org/</sonar.host.url>
   1434 
   1435   </properties>
   1436 
   1437 </project>
   1438