1 <?xml version="1.0" encoding="UTF-8"?> 2 <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"> 3 <modelVersion>4.0.0</modelVersion> 4 5 <groupId>junit</groupId> 6 <artifactId>junit</artifactId> 7 <version>4.12</version> 8 9 <name>JUnit</name> 10 <description>JUnit is a unit testing framework for Java, created by Erich Gamma and Kent Beck.</description> 11 <url>http://junit.org</url> 12 <inceptionYear>2002</inceptionYear> 13 <organization> 14 <name>JUnit</name> 15 <url>http://www.junit.org</url> 16 </organization> 17 <licenses> 18 <license> 19 <name>Eclipse Public License 1.0</name> 20 <url>http://www.eclipse.org/legal/epl-v10.html</url> 21 <distribution>repo</distribution> 22 </license> 23 </licenses> 24 25 <developers> 26 <developer> 27 <id>dsaff</id> 28 <name>David Saff</name> 29 <email>david (a] saff.net</email> 30 </developer> 31 <developer> 32 <id>kcooney</id> 33 <name>Kevin Cooney</name> 34 <email>kcooney (a] google.com</email> 35 </developer> 36 <developer> 37 <id>stefanbirkner</id> 38 <name>Stefan Birkner</name> 39 <email>mail (a] stefan-birkner.de</email> 40 </developer> 41 <developer> 42 <id>marcphilipp</id> 43 <name>Marc Philipp</name> 44 <email>mail (a] marcphilipp.de</email> 45 </developer> 46 </developers> 47 <contributors> 48 <contributor> 49 <name>JUnit contributors</name> 50 <organization>JUnit</organization> 51 <email>junit (a] yahoogroups.com</email> 52 <url>https://github.com/junit-team/junit/graphs/contributors</url> 53 <roles> 54 <role>developers</role> 55 </roles> 56 </contributor> 57 </contributors> 58 59 <mailingLists> 60 <mailingList> 61 <name>JUnit Mailing List</name> 62 <post>junit (a] yahoogroups.com</post> 63 <archive>https://groups.yahoo.com/neo/groups/junit/info</archive> 64 </mailingList> 65 </mailingLists> 66 67 <prerequisites> 68 <maven>3.0.4</maven> 69 </prerequisites> 70 71 <scm> 72 <connection>scm:git:git://github.com/junit-team/junit.git</connection> 73 <developerConnection>scm:git:git (a] github.com:junit-team/junit.git</developerConnection> 74 <url>http://github.com/junit-team/junit/tree/master</url> 75 <tag>r4.12</tag> 76 </scm> 77 <issueManagement> 78 <system>github</system> 79 <url>https://github.com/junit-team/junit/issues</url> 80 </issueManagement> 81 <ciManagement> 82 <system>jenkins</system> 83 <url>https://junit.ci.cloudbees.com/</url> 84 </ciManagement> 85 <distributionManagement> 86 <downloadUrl>https://github.com/junit-team/junit/wiki/Download-and-Install</downloadUrl> 87 <snapshotRepository> 88 <id>junit-snapshot-repo</id> 89 <name>Nexus Snapshot Repository</name> 90 <url>https://oss.sonatype.org/content/repositories/snapshots/</url> 91 </snapshotRepository> 92 <repository> 93 <id>junit-releases-repo</id> 94 <name>Nexus Release Repository</name> 95 <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url> 96 </repository> 97 <site> 98 <id>junit.github.io</id> 99 <url>gitsite:git (a] github.com/junit-team/junit.git</url> 100 </site> 101 </distributionManagement> 102 103 <properties> 104 <jdkVersion>1.5</jdkVersion> 105 <project.build.sourceEncoding>ISO-8859-1</project.build.sourceEncoding> 106 <arguments /> 107 <gpg.keyname>67893CC4</gpg.keyname> 108 </properties> 109 110 <dependencies> 111 <dependency> 112 <groupId>org.hamcrest</groupId> 113 <artifactId>hamcrest-core</artifactId> 114 <version>1.3</version> 115 </dependency> 116 </dependencies> 117 118 <build> 119 <resources> 120 <resource> 121 <directory>${project.basedir}/src/main/resources</directory> 122 </resource> 123 <resource> 124 <directory>${project.basedir}</directory> 125 <includes> 126 <include>LICENSE-junit.txt</include> 127 </includes> 128 </resource> 129 </resources> 130 <plugins> 131 <!-- 132 Both "org.apache" and "org.codehaus" are default providers of MOJO plugins 133 which are especially dedicated to Maven projects. 134 The MOJO stands for "Maven plain Old Java Object". 135 Each mojo is an executable goal in Maven, and a plugin is a distribution of 136 one or more related mojos. 137 For more information see http://maven.apache.org/plugin-developers/index.html 138 139 The following plugins are ordered according the Maven build lifecycle. 140 http://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html 141 --> 142 <plugin> 143 <!-- 144 Checks that the version of user's maven installation is 3.0.4, 145 the JDK is 1.5+, no non-standard repositories are specified in 146 the project, requires only release versions of dependencies of other artifacts. 147 --> 148 <artifactId>maven-enforcer-plugin</artifactId> 149 <version>1.3.1</version> 150 <executions> 151 <execution> 152 <id>enforce-versions</id> 153 <phase>initialize</phase> 154 <goals> 155 <goal>enforce</goal> 156 </goals> 157 <configuration> 158 <fail>true</fail> 159 <rules> 160 <requireMavenVersion> 161 <!-- Some plugin features require a recent Maven runtime to work properly --> 162 <message>Current version of Maven ${maven.version} required to build the project 163 should be ${project.prerequisites.maven}, or higher! 164 </message> 165 <version>[${project.prerequisites.maven},)</version> 166 </requireMavenVersion> 167 <requireJavaVersion> 168 <message>Current JDK version ${java.version} should be ${jdkVersion}, or higher! 169 </message> 170 <version>${jdkVersion}</version> 171 </requireJavaVersion> 172 <requireNoRepositories> 173 <message>Best Practice is to never define repositories in pom.xml (use a repository 174 manager instead). 175 </message> 176 </requireNoRepositories> 177 <requireReleaseDeps> 178 <message>No Snapshots Dependencies Allowed!</message> 179 </requireReleaseDeps> 180 </rules> 181 </configuration> 182 </execution> 183 </executions> 184 </plugin> 185 <plugin> 186 <!-- 187 Updates Version#id(). 188 --> 189 <groupId>com.google.code.maven-replacer-plugin</groupId> 190 <artifactId>replacer</artifactId> 191 <version>1.5.3</version> 192 <executions> 193 <execution> 194 <phase>process-sources</phase> 195 <goals> 196 <goal>replace</goal> 197 </goals> 198 </execution> 199 </executions> 200 <configuration> 201 <ignoreMissingFile>false</ignoreMissingFile> 202 <file>src/main/java/junit/runner/Version.java.template</file> 203 <outputFile>src/main/java/junit/runner/Version.java</outputFile> 204 <regex>false</regex> 205 <token>@version@</token> 206 <value>${project.version}</value> 207 </configuration> 208 </plugin> 209 <plugin><!-- Using jdk 1.5.0_22, package-info.java files are compiled correctly. --> 210 <!-- 211 java compiler plugin forked in extra process 212 --> 213 <artifactId>maven-compiler-plugin</artifactId> 214 <version>3.1</version> 215 <configuration> 216 <encoding>${project.build.sourceEncoding}</encoding> 217 <source>${jdkVersion}</source> 218 <target>${jdkVersion}</target> 219 <testSource>${jdkVersion}</testSource> 220 <testTarget>${jdkVersion}</testTarget> 221 <compilerVersion>1.5</compilerVersion> 222 <showDeprecation>true</showDeprecation> 223 <showWarnings>true</showWarnings> 224 <debug>true</debug> 225 <fork>true</fork> 226 <compilerArgs> 227 <arg>-Xlint:unchecked</arg> 228 </compilerArgs> 229 <maxmem>128m</maxmem> 230 </configuration> 231 </plugin> 232 <plugin> 233 <groupId>org.codehaus.mojo</groupId> 234 <artifactId>animal-sniffer-maven-plugin</artifactId> 235 <version>1.11</version> 236 <executions> 237 <execution> 238 <id>signature-check</id> 239 <phase>test</phase> 240 <goals> 241 <goal>check</goal> 242 </goals> 243 <configuration> 244 <signature> 245 <groupId>org.codehaus.mojo.signature</groupId> 246 <artifactId>java15</artifactId> 247 <version>1.0</version> 248 </signature> 249 </configuration> 250 </execution> 251 </executions> 252 </plugin> 253 <plugin> 254 <!-- 255 A plugin which uses the JUnit framework in order to start 256 our junit suite "AllTests" after the sources are compiled. 257 --> 258 <artifactId>maven-surefire-plugin</artifactId> 259 <version>2.17</version> 260 <configuration> 261 <test>org/junit/tests/AllTests.java</test> 262 <useSystemClassLoader>true</useSystemClassLoader> 263 <enableAssertions>false</enableAssertions> 264 </configuration> 265 </plugin> 266 <plugin> 267 <!-- 268 This plugin can package the main artifact's sources (src/main/java) 269 in to jar archive. See target/junit-*-sources.jar. 270 --> 271 <artifactId>maven-source-plugin</artifactId> 272 <version>2.2.1</version> 273 </plugin> 274 <plugin> 275 <!-- 276 This plugin can generate Javadoc by a forked 277 process and then package the Javadoc 278 in jar archive target/junit-*-javadoc.jar. 279 --> 280 <artifactId>maven-javadoc-plugin</artifactId> 281 <version>2.9.1</version> 282 <configuration> 283 <stylesheetfile>${basedir}/src/main/javadoc/stylesheet.css</stylesheetfile> 284 <show>protected</show> 285 <author>false</author> 286 <version>false</version> 287 <detectLinks>false</detectLinks> 288 <linksource>true</linksource> 289 <keywords>true</keywords> 290 <use>false</use> 291 <windowtitle>JUnit API</windowtitle> 292 <encoding>UTF-8</encoding> 293 <locale>en</locale> 294 <javadocVersion>${jdkVersion}</javadocVersion> 295 <javaApiLinks> 296 <property> 297 <name>api_${jdkVersion}</name> 298 <value>http://docs.oracle.com/javase/${jdkVersion}.0/docs/api/</value> 299 </property> 300 </javaApiLinks> 301 <excludePackageNames>junit.*,*.internal.*</excludePackageNames> 302 <verbose>true</verbose> 303 <minmemory>32m</minmemory> 304 <maxmemory>128m</maxmemory> 305 <failOnError>true</failOnError> 306 <includeDependencySources>true</includeDependencySources> 307 <dependencySourceIncludes> 308 <dependencySourceInclude>org.hamcrest:hamcrest-core:*</dependencySourceInclude> 309 </dependencySourceIncludes> 310 </configuration> 311 </plugin> 312 <plugin> 313 <artifactId>maven-release-plugin</artifactId> 314 <version>2.5</version> 315 <configuration> 316 <mavenExecutorId>forked-path</mavenExecutorId> 317 <useReleaseProfile>false</useReleaseProfile> 318 <arguments>-Pgenerate-docs,junit-release ${arguments}</arguments> 319 <tagNameFormat>r@{project.version}</tagNameFormat> 320 </configuration> 321 </plugin> 322 <plugin> 323 <artifactId>maven-site-plugin</artifactId> 324 <version>3.3</version> 325 <dependencies> 326 <dependency> 327 <groupId>com.github.stephenc.wagon</groupId> 328 <artifactId>wagon-gitsite</artifactId> 329 <version>0.4.1</version> 330 </dependency> 331 <dependency> 332 <groupId>org.apache.maven.doxia</groupId> 333 <artifactId>doxia-module-markdown</artifactId> 334 <version>1.5</version> 335 </dependency> 336 </dependencies> 337 </plugin> 338 <plugin> 339 <artifactId>maven-jar-plugin</artifactId> 340 <version>2.4</version> 341 <configuration> 342 <archive> 343 <addMavenDescriptor>false</addMavenDescriptor> 344 <manifest> 345 <addDefaultImplementationEntries>true</addDefaultImplementationEntries> 346 </manifest> 347 </archive> 348 </configuration> 349 </plugin> 350 </plugins> 351 </build> 352 353 <reporting> 354 <plugins> 355 <plugin> 356 <artifactId>maven-project-info-reports-plugin</artifactId> 357 <version>2.7</version> 358 <configuration> 359 <dependencyLocationsEnabled>false</dependencyLocationsEnabled> 360 <!-- waiting for MPIR-267 --> 361 </configuration> 362 <reportSets> 363 <reportSet> 364 <reports> 365 <report>index</report> 366 <report>dependency-info</report> 367 <report>modules</report> 368 <report>license</report> 369 <report>project-team</report> 370 <report>scm</report> 371 <report>issue-tracking</report> 372 <report>mailing-list</report> 373 <report>dependency-management</report> 374 <report>dependencies</report> 375 <report>dependency-convergence</report> 376 <report>cim</report> 377 <report>distribution-management</report> 378 </reports> 379 </reportSet> 380 </reportSets> 381 </plugin> 382 <plugin> 383 <artifactId>maven-javadoc-plugin</artifactId> 384 <version>2.9.1</version> 385 <configuration> 386 <destDir>javadoc/latest</destDir> 387 <stylesheetfile>${basedir}/src/main/javadoc/stylesheet.css</stylesheetfile> 388 <show>protected</show> 389 <author>false</author> 390 <version>false</version> 391 <detectLinks>false</detectLinks> 392 <linksource>true</linksource> 393 <keywords>true</keywords> 394 <use>false</use> 395 <windowtitle>JUnit API</windowtitle> 396 <encoding>UTF-8</encoding> 397 <locale>en</locale> 398 <javadocVersion>${jdkVersion}</javadocVersion> 399 <javaApiLinks> 400 <property> 401 <name>api_${jdkVersion}</name> 402 <value>http://docs.oracle.com/javase/${jdkVersion}.0/docs/api/</value> 403 </property> 404 </javaApiLinks> 405 <excludePackageNames>junit.*,*.internal.*</excludePackageNames> 406 <verbose>true</verbose> 407 <minmemory>32m</minmemory> 408 <maxmemory>128m</maxmemory> 409 <failOnError>true</failOnError> 410 <includeDependencySources>true</includeDependencySources> 411 <dependencySourceIncludes> 412 <dependencySourceInclude>org.hamcrest:hamcrest-core:*</dependencySourceInclude> 413 </dependencySourceIncludes> 414 </configuration> 415 <reportSets> 416 <reportSet> 417 <reports> 418 <report>javadoc</report> 419 </reports> 420 </reportSet> 421 </reportSets> 422 </plugin> 423 </plugins> 424 </reporting> 425 426 <profiles> 427 <profile> 428 <id>junit-release</id> 429 <!-- 430 Signs all artifacts before deploying to Maven Central. 431 --> 432 <build> 433 <plugins> 434 <plugin> 435 <!-- 436 The goal is to sign all artifacts so that the user may verify them before downloading. 437 The automatic build system may reuire your key ID, and passphrase specified using system properties: 438 -Dgpg.passphrase="<passphrase>" -Dgpg.keyname="<your key ID>" 439 In order to create the key pair, use the command "gpg ––gen-key". 440 (–– stands for double dash) 441 --> 442 <artifactId>maven-gpg-plugin</artifactId> 443 <version>1.5</version> 444 <executions> 445 <execution> 446 <id>gpg-sign</id> 447 <phase>verify</phase> 448 <goals> 449 <goal>sign</goal> 450 </goals> 451 </execution> 452 </executions> 453 </plugin> 454 </plugins> 455 </build> 456 </profile> 457 <profile> 458 <id>generate-docs</id> 459 <!-- 460 Generate the documentation artifacts. 461 Note: this profile is also required to be active for release 462 builds due to the packaging requirements of the Central repo 463 --> 464 <build> 465 <plugins> 466 <plugin> 467 <artifactId>maven-source-plugin</artifactId> 468 <executions> 469 <execution> 470 <id>attach-sources</id> 471 <phase>prepare-package</phase> 472 <goals> 473 <goal>jar-no-fork</goal> 474 </goals> 475 </execution> 476 </executions> 477 </plugin> 478 <plugin> 479 <artifactId>maven-javadoc-plugin</artifactId> 480 <executions> 481 <execution> 482 <id>attach-javadoc</id> 483 <phase>package</phase> 484 <goals> 485 <goal>jar</goal> 486 </goals> 487 </execution> 488 </executions> 489 </plugin> 490 </plugins> 491 </build> 492 </profile> 493 <profile> 494 <id>restrict-doclint</id> 495 <!-- doclint is only supported by JDK 8 --> 496 <activation> 497 <jdk>[1.8,)</jdk> 498 </activation> 499 <build> 500 <plugins> 501 <plugin> 502 <artifactId>maven-compiler-plugin</artifactId> 503 <configuration> 504 <compilerArgs> 505 <arg>-Xlint:unchecked</arg> 506 <arg>-Xdoclint:accessibility,reference,syntax</arg> 507 </compilerArgs> 508 </configuration> 509 </plugin> 510 <plugin> 511 <artifactId>maven-javadoc-plugin</artifactId> 512 <configuration> 513 <additionalparam>-Xdoclint:accessibility -Xdoclint:reference</additionalparam> 514 </configuration> 515 </plugin> 516 </plugins> 517 </build> 518 <reporting> 519 <plugins> 520 <plugin> 521 <artifactId>maven-javadoc-plugin</artifactId> 522 <configuration> 523 <additionalparam>-Xdoclint:accessibility -Xdoclint:reference</additionalparam> 524 </configuration> 525 </plugin> 526 </plugins> 527 </reporting> 528 </profile> 529 <profile> 530 <id>fast-tests</id> 531 <build> 532 <plugins> 533 <plugin> 534 <artifactId>maven-surefire-plugin</artifactId> 535 <configuration> 536 <parallel>classes</parallel> 537 <threadCountClasses>2</threadCountClasses> 538 </configuration> 539 <dependencies> 540 <dependency> 541 <groupId>org.apache.maven.surefire</groupId> 542 <artifactId>surefire-junit47</artifactId> 543 <version>2.17</version> 544 </dependency> 545 </dependencies> 546 </plugin> 547 </plugins> 548 </build> 549 </profile> 550 </profiles> 551 </project> 552