pom.xml 19.4 KB
Newer Older
1
<?xml version="1.0" encoding="UTF-8"?>
K
kohsuke 已提交
2 3 4
<!--
The MIT License

5
Copyright (c) 2004-2011, Sun Microsystems, Inc., Kohsuke Kawaguchi, id:sorokh
K
kohsuke 已提交
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
-->
25
<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/maven-v4_0_0.xsd">
K
kohsuke 已提交
26
  <modelVersion>4.0.0</modelVersion>
27

K
kohsuke 已提交
28
  <parent>
29 30
    <groupId>org.jenkins-ci</groupId>
    <artifactId>jenkins</artifactId>
31
    <version>1.94</version>
32
    <relativePath />
K
kohsuke 已提交
33
  </parent>
34

35
  <groupId>org.jenkins-ci.main</groupId>
36
  <artifactId>jenkins-parent</artifactId>
37
  <version>${revision}${changelist}</version>
K
kohsuke 已提交
38
  <packaging>pom</packaging>
39

40
  <name>Jenkins main module</name>
41
  <description>The module that constitutes the main jenkins.war</description>
42
  <url>https://github.com/jenkinsci/jenkins</url>
43

44 45 46
  <licenses>
    <license>
      <name>The MIT license</name>
R
René Scheibe 已提交
47
      <url>https://opensource.org/licenses/MIT</url>
48 49 50
      <distribution>repo</distribution>
    </license>
  </licenses>
O
Olivier Lamy 已提交
51

K
kohsuke 已提交
52
  <modules>
53
    <module>bom</module>
54 55
    <module>websocket/spi</module>
    <module>websocket/jetty9</module>
56
    <module>websocket/jetty10</module>
K
kohsuke 已提交
57 58
    <module>core</module>
    <module>war</module>
K
kohsuke 已提交
59
    <module>test</module>
60
    <module>cli</module>
B
Basil Crow 已提交
61
    <module>coverage</module>
K
kohsuke 已提交
62
  </modules>
63

B
Basil Crow 已提交
64 65 66
  <scm child.scm.connection.inherit.append.path="false" child.scm.developerConnection.inherit.append.path="false" child.scm.url.inherit.append.path="false">
    <connection>scm:git:https://github.com/jenkinsci/jenkins.git</connection>
    <developerConnection>scm:git:git@github.com:jenkinsci/jenkins.git</developerConnection>
67
    <tag>${scmTag}</tag>
B
Basil Crow 已提交
68
    <url>https://github.com/jenkinsci/jenkins</url>
69
  </scm>
70

O
olivier lamy 已提交
71 72
  <issueManagement>
    <system>jira</system>
73
    <url>https://issues.jenkins.io/issues/?jql=component=15593</url>
O
olivier lamy 已提交
74 75
  </issueManagement>

76
  <properties>
77
    <revision>2.391</revision>
78 79
    <changelist>-SNAPSHOT</changelist>

O
olivier lamy 已提交
80 81 82 83 84 85 86
    <!-- configuration for patch tracker plugin  -->
    <project.patchManagement.system>github</project.patchManagement.system>
    <patch.request.organisation>jenkinsci</patch.request.organisation>
    <patch.request.repository>jenkins</patch.request.repository>
    <project.patchManagement.url>https://api.github.com</project.patchManagement.url>
    <patch.tracker.serverId>jenkins-jira</patch.tracker.serverId>

D
Daniel Beck 已提交
87
    <changelog.url>https://www.jenkins.io/changelog</changelog.url>
88

89
    <!-- Bundled Remoting version -->
90
    <remoting.version>3107.v665000b_51092</remoting.version>
91
    <!-- Minimum Remoting version, which is tested for API compatibility -->
92
    <remoting.minimum.supported.version>4.7</remoting.minimum.supported.version>
93

94 95
    <spotbugs.effort>Max</spotbugs.effort>
    <spotbugs.threshold>Medium</spotbugs.threshold>
96

97
    <access-modifier.version>1.30</access-modifier.version>
98
    <antlr.version>4.11.1</antlr.version>
99
    <bridge-method-injector.version>1.25</bridge-method-injector.version>
100
    <spotless.version>2.33.0</spotless.version>
101 102
    <!-- Make sure to keep the jetty-maven-plugin version in war/pom.xml in sync with the Jetty release in Winstone: -->
    <winstone.version>6.10</winstone.version>
103 104
  </properties>

B
Basil Crow 已提交
105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124
  <!--
    Note that the 'repositories' and 'pluginRepositories' blocks below are actually copy-pasted
    from the Jenkins org pom. This is on purpose to keep Jenkins core buildable even if one has
    *not* defined the specific details in the settings.xml file.
  -->
  <repositories>
    <repository>
      <id>repo.jenkins-ci.org</id>
      <url>https://repo.jenkins-ci.org/public/</url>
      <!-- allow snapshots -->
    </repository>
  </repositories>

  <pluginRepositories>
    <pluginRepository>
      <id>repo.jenkins-ci.org</id>
      <url>https://repo.jenkins-ci.org/public/</url>
    </pluginRepository>
  </pluginRepositories>

125
  <build>
K
kohsuke 已提交
126
    <defaultGoal>install</defaultGoal>
S
Stephen Connolly 已提交
127 128 129
    <resources>
      <resource>
        <filtering>false</filtering>
B
Basil Crow 已提交
130
        <directory>${basedir}/src/main/resources</directory>
S
Stephen Connolly 已提交
131 132 133
      </resource>
      <resource>
        <filtering>true</filtering>
B
Basil Crow 已提交
134
        <directory>${basedir}/src/filter/resources</directory>
S
Stephen Connolly 已提交
135 136
      </resource>
    </resources>
A
abayer 已提交
137 138
    <pluginManagement>
      <plugins>
139
        <plugin>
S
Seiji Sogabe 已提交
140 141
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-deploy-plugin</artifactId>
142
          <!-- Version specified in parent POM -->
143
        </plugin>
O
Olivier Lamy 已提交
144 145 146
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-dependency-plugin</artifactId>
147
          <!-- Version specified in parent POM -->
O
Olivier Lamy 已提交
148
        </plugin>
K
Kohsuke Kawaguchi 已提交
149
        <plugin>
O
olivier lamy 已提交
150
          <groupId>org.apache.maven.plugins</groupId>
K
Kohsuke Kawaguchi 已提交
151
          <artifactId>maven-compiler-plugin</artifactId>
152
          <!-- Version specified in parent POM -->
K
Kohsuke Kawaguchi 已提交
153
          <configuration>
C
christ66 已提交
154
            <fork>true</fork>
K
Kohsuke Kawaguchi 已提交
155
            <compilerReuseStrategy>alwaysNew</compilerReuseStrategy>
156
            <compilerArgs>
B
Basil Crow 已提交
157 158 159 160
              <!--
                always compile package-info.java for useIncrementalCompilation
                ref: https://stackoverflow.com/questions/6770455/maven-compiling-package-info-java-to-package-info-class
              -->
161 162
              <compilerArg>-Xpkginfo:always</compilerArg>
            </compilerArgs>
K
Kohsuke Kawaguchi 已提交
163 164
          </configuration>
        </plugin>
165
        <plugin>
166
          <groupId>org.apache.maven.plugins</groupId>
167
          <artifactId>maven-gpg-plugin</artifactId>
168
          <!-- Version specified in parent POM -->
169
        </plugin>
S
Seiji Sogabe 已提交
170 171 172
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-install-plugin</artifactId>
173
          <!-- Version specified in parent POM -->
174
        </plugin>
S
Seiji Sogabe 已提交
175 176
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
177
          <artifactId>maven-javadoc-plugin</artifactId>
178
          <!-- Version specified in parent POM -->
179 180
          <configuration>
            <quiet>true</quiet>
J
James Nord 已提交
181
            <splitindex>true</splitindex>
182
          </configuration>
183
        </plugin>
184
        <plugin>
S
Seiji Sogabe 已提交
185
          <groupId>org.apache.maven.plugins</groupId>
186
          <artifactId>maven-jar-plugin</artifactId>
187
          <!-- Version specified in parent POM -->
188
        </plugin>
189 190 191
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-war-plugin</artifactId>
192
          <!-- Version specified in parent POM -->
193
        </plugin>
194
        <plugin>
S
Seiji Sogabe 已提交
195
          <groupId>org.apache.maven.plugins</groupId>
196
          <artifactId>maven-surefire-plugin</artifactId>
197
          <!-- Version specified in parent POM -->
S
Seiji Sogabe 已提交
198
          <configuration>
199 200 201 202 203
            <systemPropertyVariables>
              <java.io.tmpdir>${project.build.directory}</java.io.tmpdir>
              <forkedProcessTimeoutInSeconds>3600</forkedProcessTimeoutInSeconds>
              <java.awt.headless>true</java.awt.headless>
            </systemPropertyVariables>
204
            <runOrder>alphabetical</runOrder>
S
Seiji Sogabe 已提交
205
          </configuration>
206
        </plugin>
S
Stephen Connolly 已提交
207 208
        <plugin>
          <artifactId>maven-jarsigner-plugin</artifactId>
209
          <version>3.0.0</version>
S
Stephen Connolly 已提交
210 211 212 213 214 215 216 217 218 219 220 221
          <configuration>
            <!--
              during the development, debug profile will cause
              the jars to be signed by a self-certified dummy public key.

              For release, you should define the real values in ~/.m2/settings.xml
            -->
            <alias>${hudson.sign.alias}</alias>
            <storepass>${hudson.sign.storepass}</storepass>
            <keystore>${hudson.sign.keystore}</keystore>
          </configuration>
        </plugin>
S
Seiji Sogabe 已提交
222 223 224
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-resources-plugin</artifactId>
225
          <!-- Version specified in parent POM -->
S
Seiji Sogabe 已提交
226
        </plugin>
227
        <plugin>
K
Kohsuke Kawaguchi 已提交
228 229
          <groupId>org.kohsuke</groupId>
          <artifactId>access-modifier-checker</artifactId>
230
          <version>${access-modifier.version}</version>
K
Kohsuke Kawaguchi 已提交
231
        </plugin>
232 233 234
        <plugin>
          <groupId>com.cloudbees</groupId>
          <artifactId>maven-license-plugin</artifactId>
235
          <!-- Version specified in parent POM -->
236 237 238 239 240 241 242 243
          <executions>
            <execution>
              <goals>
                <goal>process</goal>
              </goals>
              <phase>compile</phase>
              <configuration>
                <requireCompleteLicenseInfo>true</requireCompleteLicenseInfo>
244
                <script>../licenseCompleter.groovy</script>
245 246 247 248
              </configuration>
            </execution>
          </executions>
        </plugin>
249 250
        <plugin>
          <groupId>org.jvnet.localizer</groupId>
251
          <artifactId>localizer-maven-plugin</artifactId>
252
          <!-- Version specified in parent POM -->
253 254 255
          <configuration>
            <outputEncoding>UTF-8</outputEncoding>
          </configuration>
B
Basil Crow 已提交
256
        </plugin>
257 258 259 260 261 262 263 264
        <plugin>
          <groupId>org.jvnet.hudson.tools</groupId>
          <artifactId>maven-encoding-plugin</artifactId>
          <version>1.1</version>
        </plugin>
        <plugin>
          <groupId>com.infradna.tool</groupId>
          <artifactId>bridge-method-injector</artifactId>
265
          <version>${bridge-method-injector.version}</version>
266 267
        </plugin>
        <plugin>
268 269 270
          <groupId>org.antlr</groupId>
          <artifactId>antlr4-maven-plugin</artifactId>
          <version>${antlr.version}</version>
271 272 273 274
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-pmd-plugin</artifactId>
275
          <!-- Version specified in parent POM -->
276
        </plugin>
277 278 279
        <plugin>
          <groupId>org.jvnet.updatecenter2</groupId>
          <artifactId>maven-makepkgs-plugin</artifactId>
C
Christoph Kutzinski 已提交
280
          <version>0.6.2</version>
281
        </plugin>
B
Basil Crow 已提交
282 283 284 285 286
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-enforcer-plugin</artifactId>
          <!-- Version specified in parent POM -->
        </plugin>
I
imod 已提交
287 288
        <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
        <plugin>
B
Basil Crow 已提交
289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312
          <groupId>org.eclipse.m2e</groupId>
          <artifactId>lifecycle-mapping</artifactId>
          <!-- Version specified in parent POM -->
          <configuration>
            <lifecycleMappingMetadata>
              <pluginExecutions>
                <pluginExecution>
                  <pluginExecutionFilter>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-dependency-plugin</artifactId>
                    <!-- Version specified in parent POM -->
                    <versionRange>[2.3,)</versionRange>
                    <goals>
                      <goal>list</goal>
                      <goal>unpack-dependencies</goal>
                    </goals>
                  </pluginExecutionFilter>
                  <action>
                    <ignore />
                  </action>
                </pluginExecution>
              </pluginExecutions>
            </lifecycleMappingMetadata>
          </configuration>
I
imod 已提交
313
        </plugin>
314 315 316
        <plugin>
          <groupId>com.github.spotbugs</groupId>
          <artifactId>spotbugs-maven-plugin</artifactId>
317
          <!-- Version specified in parent POM -->
J
Jeff Thompson 已提交
318 319 320
          <configuration>
            <maxHeap>768</maxHeap>
          </configuration>
321
        </plugin>
322 323 324
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-checkstyle-plugin</artifactId>
325
          <!-- Version specified in parent POM -->
326
          <configuration>
B
Basil Crow 已提交
327
            <consoleOutput>true</consoleOutput>
B
Basil Crow 已提交
328
            <includeTestSourceDirectory>true</includeTestSourceDirectory>
329
            <configLocation>${maven.multiModuleProjectDirectory}/src/checkstyle/checkstyle-configuration.xml</configLocation>
330
            <suppressionsLocation>${maven.multiModuleProjectDirectory}/src/checkstyle/checkstyle-suppressions.xml</suppressionsLocation>
B
Basil Crow 已提交
331
          </configuration>
B
Basil Crow 已提交
332 333 334 335
          <dependencies>
            <dependency>
              <groupId>com.puppycrawl.tools</groupId>
              <artifactId>checkstyle</artifactId>
336
              <version>10.7.0</version>
B
Basil Crow 已提交
337 338
            </dependency>
          </dependencies>
B
Basil Crow 已提交
339 340 341 342 343 344
          <executions>
            <execution>
              <id>validate</id>
              <goals>
                <goal>check</goal>
              </goals>
B
Basil Crow 已提交
345
              <phase>validate</phase>
B
Basil Crow 已提交
346 347
            </execution>
          </executions>
348
        </plugin>
349 350 351 352 353
        <plugin>
          <groupId>com.diffplug.spotless</groupId>
          <artifactId>spotless-maven-plugin</artifactId>
          <version>${spotless.version}</version>
          <configuration>
354 355 356
            <antlr4>
              <antlr4Formatter />
            </antlr4>
357
            <java>
358
              <endWithNewline />
B
Basil Crow 已提交
359
              <importOrder />
360 361 362
              <indent>
                <spaces>true</spaces>
              </indent>
363
              <removeUnusedImports />
B
Basil Crow 已提交
364
              <trimTrailingWhitespace />
365
            </java>
B
Basil Crow 已提交
366 367 368 369 370 371
            <pom>
              <sortPom>
                <encoding>${project.build.sourceEncoding}</encoding>
                <lineSeparator>\n</lineSeparator>
                <expandEmptyElements>false</expandEmptyElements>
                <spaceBeforeCloseEmptyElement>true</spaceBeforeCloseEmptyElement>
B
Basil Crow 已提交
372 373
                <sortDependencies>scope,groupId,artifactId</sortDependencies>
                <sortDependencyExclusions>groupId,artifactId</sortDependencyExclusions>
B
Basil Crow 已提交
374 375
              </sortPom>
            </pom>
376 377 378 379 380 381 382 383 384 385 386
          </configuration>
          <executions>
            <execution>
              <!-- Runs in verify phase by default -->
              <goals>
                <!-- Can be disabled using -Dspotless.check.skip -->
                <goal>check</goal>
              </goals>
            </execution>
          </executions>
        </plugin>
B
Basil Crow 已提交
387 388 389 390 391
        <plugin>
          <groupId>org.jacoco</groupId>
          <artifactId>jacoco-maven-plugin</artifactId>
          <version>0.8.8</version>
        </plugin>
A
abayer 已提交
392 393
      </plugins>
    </pluginManagement>
394

395 396 397
    <plugins>
      <plugin>
        <artifactId>maven-release-plugin</artifactId>
398
        <!-- Version specified in parent POM -->
399
        <configuration>
400 401
          <!-- work around for a bug in javadoc plugin that causes the release to fail. see MRELEASE-271 -->
          <preparationGoals>clean install</preparationGoals>
402
          <goals>-DskipTests -Dspotbugs.skip -Dmaven.checkstyle.skip -Dspotless.check.skip generate-resources javadoc:javadoc deploy</goals>
K
Kohsuke Kawaguchi 已提交
403 404
          <pushChanges>false</pushChanges>
          <localCheckout>true</localCheckout>
405
          <tagNameFormat>jenkins-@{project.version}</tagNameFormat>
406 407
        </configuration>
      </plugin>
K
kohsuke 已提交
408 409
      <plugin>
        <artifactId>maven-remote-resources-plugin</artifactId>
410
        <!-- Version specified in parent POM -->
K
kohsuke 已提交
411 412 413 414 415 416 417 418 419 420 421 422 423
        <executions>
          <execution>
            <goals>
              <goal>process</goal>
            </goals>
            <configuration>
              <resourceBundles>
                <resourceBundle>org.jvnet.hudson:license:1.0</resourceBundle>
              </resourceBundles>
            </configuration>
          </execution>
        </executions>
      </plugin>
424

425
      <plugin>
S
Seiji Sogabe 已提交
426
        <groupId>org.apache.maven.plugins</groupId>
427
        <artifactId>maven-enforcer-plugin</artifactId>
428
        <!-- Version specified in parent POM -->
429
        <executions>
430 431 432 433 434 435 436 437
          <execution>
            <id>enforce-banned-dependencies</id>
            <goals>
              <goal>enforce</goal>
            </goals>
            <configuration>
              <rules>
                <bannedDependencies>
438
                  <excludes combine.children="append">
439
                    <exclude>org.sonatype.sisu:sisu-guice</exclude>
440 441
                    <exclude>commons-logging:commons-logging:*:jar:compile</exclude>
                    <exclude>commons-logging:commons-logging:*:jar:runtime</exclude>
442 443 444 445 446
                  </excludes>
                </bannedDependencies>
              </rules>
            </configuration>
          </execution>
447
        </executions>
448 449 450 451
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-checkstyle-plugin</artifactId>
452
        <!-- Version specified in parent POM -->
453
      </plugin>
454 455 456 457 458
      <plugin>
        <groupId>com.diffplug.spotless</groupId>
        <artifactId>spotless-maven-plugin</artifactId>
        <version>${spotless.version}</version>
      </plugin>
459 460
    </plugins>
  </build>
461

462 463 464 465 466 467 468
  <profiles>
    <profile>
      <id>debug</id>
      <activation>
        <activeByDefault>true</activeByDefault>
      </activation>
      <properties>
469
        <hudson.sign.alias>jenkins</hudson.sign.alias>
470
        <hudson.sign.keystore>../dummy.keystore</hudson.sign.keystore>
471
        <hudson.sign.storepass>jenkins</hudson.sign.storepass>
472 473
      </properties>
    </profile>
474 475 476 477
    <profile>
      <id>release</id>
      <build>
        <plugins>
K
Kohsuke Kawaguchi 已提交
478 479
          <plugin>
            <artifactId>maven-gpg-plugin</artifactId>
480
            <!-- Version specified in parent POM -->
K
Kohsuke Kawaguchi 已提交
481 482 483 484 485 486
            <executions>
              <execution>
                <id>sign-artifacts</id>
                <goals>
                  <goal>sign</goal>
                </goals>
B
Basil Crow 已提交
487
                <phase>verify</phase>
K
Kohsuke Kawaguchi 已提交
488 489 490
              </execution>
            </executions>
          </plugin>
491 492 493
        </plugins>
      </build>
    </profile>
494 495 496
    <profile>
      <id>lts-release</id>
      <properties>
D
Daniel Beck 已提交
497
        <changelog.url>https://www.jenkins.io/changelog-stable</changelog.url>
498 499
      </properties>
    </profile>
S
Seiji Sogabe 已提交
500 501 502 503 504 505 506
    <profile>
      <id>m2e</id>
      <activation>
        <property>
          <name>m2e.version</name>
        </property>
      </activation>
B
Basil Crow 已提交
507 508 509
      <properties>
        <m2BuildDirectory>target</m2BuildDirectory>
      </properties>
S
Seiji Sogabe 已提交
510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530
      <build>
        <directory>${m2BuildDirectory}</directory>
        <plugins>
          <plugin>
            <groupId>org.maven.ide.eclipse</groupId>
            <artifactId>lifecycle-mapping</artifactId>
            <version>0.12.0</version>
            <configuration>
              <mappingId>customizable</mappingId>
              <configurators>
                <configurator id="org.maven.ide.eclipse.jdt.javaConfigurator" />
                <configurator id="org.maven.ide.eclipse.plexus.annotations.plexusConfigurator" />
              </configurators>
              <mojoExecutions>
                <mojoExecution>org.apache.maven.plugins:maven-resources-plugin::</mojoExecution>
              </mojoExecutions>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
531
  </profiles>
532
</project>