/ pom.xml
pom.xml
1 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 2 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 <groupId>org.forknet</groupId> 5 <artifactId>forknet</artifactId> 6 <version>0.2.1</version> 7 <packaging>jar</packaging> 8 <properties> 9 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 10 <skipTests>true</skipTests> 11 12 <altcoinj.version>7dc8c6f</altcoinj.version> 13 <bitcoinj.version>0.15.10</bitcoinj.version> 14 <bouncycastle.version>1.70</bouncycastle.version> 15 <build.timestamp>${maven.build.timestamp}</build.timestamp> 16 <ciyam-at.version>1.4.2</ciyam-at.version> 17 <commons-net.version>3.8.0</commons-net.version> 18 <commons-text.version>1.12.0</commons-text.version> 19 <commons-io.version>2.18.0</commons-io.version> 20 <commons-compress.version>1.27.1</commons-compress.version> 21 <commons-lang3.version>3.17.0</commons-lang3.version> 22 <dagger.version>1.2.2</dagger.version> 23 <extendedset.version>0.12.3</extendedset.version> 24 <git-commit-id-plugin.version>4.9.10</git-commit-id-plugin.version> 25 <grpc.version>1.68.1</grpc.version> 26 <guava.version>33.3.1-jre</guava.version> 27 <hamcrest-library.version>2.2</hamcrest-library.version> 28 <homoglyph.version>1.2.1</homoglyph.version> 29 <hsqldb.version>2.7.4</hsqldb.version> 30 <icu4j.version>76.1</icu4j.version> 31 <java-diff-utils.version>4.15</java-diff-utils.version> 32 <javax.servlet-api.version>4.0.1</javax.servlet-api.version> 33 <jaxb-runtime.version>2.3.9</jaxb-runtime.version> 34 <jersey.version>2.42</jersey.version> 35 <jetty.version>9.4.56.v20240826</jetty.version> 36 <json-simple.version>1.1.1</json-simple.version> 37 <json.version>20240303</json.version> 38 <jsoup.version>1.18.1</jsoup.version> 39 <junit-jupiter-engine.version>5.11.0-M2</junit-jupiter-engine.version> 40 <lifecycle-mapping.version>1.0.0</lifecycle-mapping.version> 41 <log4j.version>2.23.1</log4j.version> 42 <mail.version>1.5.0-b01</mail.version> 43 <maven-build-helper-plugin.version>3.6.0</maven-build-helper-plugin.version> 44 <maven-compiler-plugin.version>3.13.0</maven-compiler-plugin.version> 45 <maven-dependency-plugin.version>3.6.1</maven-dependency-plugin.version> 46 <maven-jar-plugin.version>3.4.2</maven-jar-plugin.version> 47 <maven-package-info-plugin.version>1.1.0</maven-package-info-plugin.version> 48 <maven-plugin.version>2.18.0</maven-plugin.version> 49 <maven-reproducible-build-plugin.version>0.17</maven-reproducible-build-plugin.version> 50 <maven-resources-plugin.version>3.3.1</maven-resources-plugin.version> 51 <maven-shade-plugin.version>3.6.0</maven-shade-plugin.version> 52 <maven-surefire-plugin.version>3.5.2</maven-surefire-plugin.version> 53 <protobuf.version>3.25.3</protobuf.version> 54 <replacer.version>1.5.3</replacer.version> 55 <simplemagic.version>1.17</simplemagic.version> 56 <slf4j.version>1.7.36</slf4j.version> 57 <sure-fire-plugin.version>2.22.2</sure-fire-plugin.version> 58 <swagger-api.version>2.0.10</swagger-api.version> 59 <swagger-ui.version>5.18.2</swagger-ui.version> 60 <upnp.version>1.2</upnp.version> 61 <xz.version>1.10</xz.version> 62 </properties> 63 <build> 64 <sourceDirectory>src/main/java</sourceDirectory> 65 <testSourceDirectory>src/test/java</testSourceDirectory> 66 <resources> 67 <resource> 68 <directory>${basedir}/src/main/resources</directory> 69 <filtering>true</filtering> 70 </resource> 71 </resources> 72 <plugins> 73 <plugin> 74 <groupId>org.codehaus.mojo</groupId> 75 <artifactId>versions-maven-plugin</artifactId> 76 <version>${maven-plugin.version}</version> 77 <configuration> 78 <generateBackupPoms>false</generateBackupPoms> 79 </configuration> 80 </plugin> 81 <plugin> 82 <artifactId>maven-compiler-plugin</artifactId> 83 <version>${maven-compiler-plugin.version}</version> 84 <configuration> 85 <release>11</release> 86 </configuration> 87 </plugin> 88 <!-- unpack swagger-ui to target folder --> 89 <plugin> 90 <artifactId>maven-dependency-plugin</artifactId> 91 <executions> 92 <execution> 93 <id>swagger ui</id> 94 <phase>generate-resources</phase> 95 <goals> 96 <goal>unpack</goal> 97 </goals> 98 <configuration> 99 <artifactItems> 100 <artifactItem> 101 <groupId>org.webjars</groupId> 102 <artifactId>swagger-ui</artifactId> 103 <version>${swagger-ui.version}</version> 104 </artifactItem> 105 </artifactItems> 106 <outputDirectory>${project.build.directory}/swagger-ui.unpacked</outputDirectory> 107 </configuration> 108 </execution> 109 </executions> 110 </plugin> 111 <plugin> 112 <groupId>pl.project13.maven</groupId> 113 <artifactId>git-commit-id-plugin</artifactId> 114 <version>${git-commit-id-plugin.version}</version> 115 <executions> 116 <execution> 117 <id>get-the-git-infos</id> 118 <goals> 119 <goal>revision</goal> 120 </goals> 121 <phase>initialize</phase> 122 </execution> 123 </executions> 124 <configuration> 125 <generateGitPropertiesFile>true</generateGitPropertiesFile> 126 <generateGitPropertiesFilename>${project.build.outputDirectory}/git.properties</generateGitPropertiesFilename> 127 <includeOnlyProperties> 128 <includeOnlyProperty>^git.commit.time$</includeOnlyProperty> 129 <includeOnlyProperty>^git.commit.id.(abbrev|full)$</includeOnlyProperty> 130 </includeOnlyProperties> 131 <dateFormat>yyyyMMddHHmmss</dateFormat> 132 <dateFormatTimeZone>UTC</dateFormatTimeZone> 133 <gitDescribe> 134 <dirty>-devel</dirty> 135 </gitDescribe> 136 <commitIdGenerationMode>full</commitIdGenerationMode> 137 <injectAllReactorProjects>true</injectAllReactorProjects> 138 <offline>true</offline> 139 <skipPoms>false</skipPoms> 140 </configuration> 141 </plugin> 142 <!-- inject correct url to swagger json file into swagger-ui --> 143 <plugin> 144 <groupId>com.google.code.maven-replacer-plugin</groupId> 145 <artifactId>replacer</artifactId> 146 <version>${replacer.version}</version> 147 <executions> 148 <execution> 149 <id>replace-swagger-ui</id> 150 <phase>generate-resources</phase> 151 <goals> 152 <goal>replace</goal> 153 </goals> 154 <inherited>false</inherited> 155 <configuration> 156 <file>${project.build.directory}/swagger-ui.unpacked/META-INF/resources/webjars/swagger-ui/${swagger-ui.version}/index.html</file> 157 <replacements> 158 <replacement> 159 <token>Swagger UI</token> 160 <value>Forknet API Documentation</value> 161 </replacement> 162 </replacements> 163 </configuration> 164 </execution> 165 <execution> 166 <id>replace-swagger-ui-json</id> 167 <phase>generate-resources</phase> 168 <goals> 169 <goal>replace</goal> 170 </goals> 171 <inherited>false</inherited> 172 <configuration> 173 <file>${project.build.directory}/swagger-ui.unpacked/META-INF/resources/webjars/swagger-ui/${swagger-ui.version}/swagger-initializer.js</file> 174 <replacements> 175 <replacement> 176 <token>https://petstore.swagger.io/v2/swagger.json</token> 177 <value>/openapi.json</value> 178 </replacement> 179 <replacement> 180 <token>deepLinking: true,</token> 181 <value> 182 deepLinking: true, 183 tagsSorter: "alpha", 184 operationsSorter: "alpha", 185 validatorUrl: false, 186 </value> 187 </replacement> 188 </replacements> 189 </configuration> 190 </execution> 191 <execution> 192 <id>replace-git-resources</id> 193 <phase>generate-resources</phase> 194 <goals> 195 <goal>replace</goal> 196 </goals> 197 <inherited>false</inherited> 198 <configuration> 199 <file>${project.build.outputDirectory}/git.properties</file> 200 <regex>true</regex> 201 <regexFlags> 202 <regexFlag>MULTILINE</regexFlag> 203 </regexFlags> 204 <replacements> 205 <replacement> 206 <token>^(#.*$[\n\r]*)</token> 207 <value/> 208 </replacement> 209 </replacements> 210 </configuration> 211 </execution> 212 </executions> 213 </plugin> 214 <!-- add swagger-ui as resource to output package --> 215 <plugin> 216 <artifactId>maven-resources-plugin</artifactId> 217 <version>${maven-resources-plugin.version}</version> 218 <configuration> 219 <propertiesEncoding>ISO-8859-1</propertiesEncoding> 220 </configuration> 221 <executions> 222 <execution> 223 <id>copy-resources</id> 224 <phase>generate-resources</phase> 225 <goals> 226 <goal>copy-resources</goal> 227 </goals> 228 <configuration> 229 <outputDirectory>${project.build.directory}/classes/resources/swagger-ui</outputDirectory> 230 <resources> 231 <resource> 232 <directory>${project.build.directory}/swagger-ui.unpacked/META-INF/resources/webjars/swagger-ui/${swagger-ui.version}</directory> 233 </resource> 234 </resources> 235 </configuration> 236 </execution> 237 </executions> 238 </plugin> 239 <!-- Generate package-info.java files for JAXB, to convert byte[] to/from 240 Base58 --> 241 <plugin> 242 <groupId>com.github.bohnman</groupId> 243 <artifactId>package-info-maven-plugin</artifactId> 244 <version>${maven-package-info-plugin.version}</version> 245 <configuration> 246 <packages> 247 <package> 248 <pattern>org.forknet.data.**</pattern> 249 <template>${project.build.sourceDirectory}/org/forknet/data/package-info.java</template> 250 </package> 251 <package> 252 <pattern>org.forknet.api.model**</pattern> 253 <template>${project.build.sourceDirectory}/org/forknet/data/package-info.java</template> 254 </package> 255 <package> 256 <pattern>org.forknet.api.model.**</pattern> 257 <template>${project.build.sourceDirectory}/org/forknet/data/package-info.java</template> 258 </package> 259 </packages> 260 <outputDirectory>${project.build.directory}/generated-sources/package-info</outputDirectory> 261 </configuration> 262 <executions> 263 <execution> 264 <goals> 265 <goal>generate</goal> 266 </goals> 267 </execution> 268 </executions> 269 </plugin> 270 <!-- Include generated package-info.java sources in build --> 271 <plugin> 272 <groupId>org.codehaus.mojo</groupId> 273 <artifactId>build-helper-maven-plugin</artifactId> 274 <version>${maven-build-helper-plugin.version}</version> 275 <executions> 276 <execution> 277 <phase>generate-sources</phase> 278 <goals> 279 <goal>add-source</goal> 280 </goals> 281 <configuration> 282 <sources> 283 <source>${project.build.directory}/generated-sources/package-info</source> 284 </sources> 285 </configuration> 286 </execution> 287 </executions> 288 </plugin> 289 <plugin> 290 <groupId>org.apache.maven.plugins</groupId> 291 <artifactId>maven-jar-plugin</artifactId> 292 <version>${maven-jar-plugin.version}</version> 293 <executions> 294 <execution> 295 <configuration> 296 <archive> 297 <manifest> 298 <addDefaultEntries>false</addDefaultEntries> 299 <addDefaultImplementationEntries>true</addDefaultImplementationEntries> 300 </manifest> 301 <manifestEntries> 302 <Last-Commit-Id>${git.commit.id.full}</Last-Commit-Id> 303 <Last-Commit-Time>${git.commit.time}</Last-Commit-Time> 304 <Reproducible-Build>true</Reproducible-Build> 305 </manifestEntries> 306 </archive> 307 </configuration> 308 </execution> 309 </executions> 310 </plugin> 311 <plugin> 312 <groupId>org.apache.maven.plugins</groupId> 313 <artifactId>maven-shade-plugin</artifactId> 314 <version>${maven-shade-plugin.version}</version> 315 <configuration> 316 <createDependencyReducedPom>false</createDependencyReducedPom> 317 <artifactSet> 318 <excludes> 319 <!-- Don't include original swagger-UI as we're including our own modified version --> 320 <exclude>org.webjars:swagger-ui</exclude> 321 <!-- Don't include JUnit as it's for testing only! --> 322 <exclude>junit:junit</exclude> 323 </excludes> 324 </artifactSet> 325 <filters> 326 <filter> 327 <artifact>*:*</artifact> 328 <excludes> 329 <exclude>META-INF/*.SF</exclude> 330 <exclude>META-INF/*.DSA</exclude> 331 <exclude>META-INF/*.RSA</exclude> 332 <exclude>**/*.js.map</exclude> 333 </excludes> 334 </filter> 335 </filters> 336 </configuration> 337 <executions> 338 <execution> 339 <phase>package</phase> 340 <goals> 341 <goal>shade</goal> 342 </goals> 343 <configuration> 344 <transformers> 345 <transformer 346 implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer" /> 347 <transformer 348 implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> 349 <mainClass>org.forknet.controller.Controller</mainClass> 350 <manifestEntries> 351 <Multi-Release>true</Multi-Release> 352 <Class-Path>. ..</Class-Path> 353 </manifestEntries> 354 </transformer> 355 </transformers> 356 </configuration> 357 </execution> 358 </executions> 359 </plugin> 360 <plugin> 361 <groupId>io.github.zlika</groupId> 362 <artifactId>reproducible-build-maven-plugin</artifactId> 363 <version>${maven-reproducible-build-plugin.version}</version> 364 <executions> 365 <execution> 366 <phase>package</phase> 367 <id>strip-jar</id> 368 <goals> 369 <goal>strip-jar</goal> 370 </goals> 371 <configuration> 372 <zipDateTime>${git.commit.time}</zipDateTime> 373 </configuration> 374 </execution> 375 </executions> 376 </plugin> 377 <plugin> 378 <groupId>org.apache.maven.plugins</groupId> 379 <artifactId>maven-surefire-plugin</artifactId> 380 <version>${maven-surefire-plugin.version}</version> 381 <configuration> 382 <skipTests>${skipTests}</skipTests> 383 </configuration> 384 </plugin> 385 </plugins> 386 <pluginManagement> 387 <plugins> 388 <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.--> 389 <plugin> 390 <groupId>org.eclipse.m2e</groupId> 391 <artifactId>lifecycle-mapping</artifactId> 392 <version>${lifecycle-mapping.version}</version> 393 <configuration> 394 <lifecycleMappingMetadata> 395 <pluginExecutions> 396 <pluginExecution> 397 <pluginExecutionFilter> 398 <groupId>org.apache.maven.plugins</groupId> 399 <artifactId>maven-dependency-plugin</artifactId> 400 <version>${maven-dependency-plugin.version}</version> 401 <goals> 402 <goal>unpack</goal> 403 </goals> 404 </pluginExecutionFilter> 405 <action> 406 <execute/> 407 </action> 408 </pluginExecution> 409 <pluginExecution> 410 <pluginExecutionFilter> 411 <groupId>com.google.code.maven-replacer-plugin</groupId> 412 <artifactId>replacer</artifactId> 413 <version>${replacer.version}</version> 414 <goals> 415 <goal>replace</goal> 416 </goals> 417 </pluginExecutionFilter> 418 <action> 419 <execute/> 420 </action> 421 </pluginExecution> 422 </pluginExecutions> 423 </lifecycleMappingMetadata> 424 </configuration> 425 </plugin> 426 <plugin> 427 <groupId>org.apache.maven.plugins</groupId> 428 <artifactId>maven-surefire-plugin</artifactId> 429 <version>${sure-fire-plugin.version}</version> 430 <configuration> 431 <argLine>-Dhsqldb.method_class_names="org.forknet.test.*" -ea</argLine> 432 </configuration> 433 </plugin> 434 </plugins> 435 </pluginManagement> 436 </build> 437 <repositories> 438 <repository> 439 <id>project.local</id> 440 <name>project</name> 441 <url>file:${project.basedir}/lib</url> 442 </repository> 443 <!-- jitpack for build-on-demand of altcoinj --> 444 <repository> 445 <id>jitpack.io</id> 446 <url>https://jitpack.io</url> 447 </repository> 448 </repositories> 449 <dependencies> 450 <!-- https://mvnrepository.com/artifact/org.codehaus.mojo/build-helper-maven-plugin --> 451 <dependency> 452 <groupId>org.codehaus.mojo</groupId> 453 <artifactId>build-helper-maven-plugin</artifactId> 454 <version>${maven-build-helper-plugin.version}</version> 455 <scope>provided</scope> 456 <!-- needed for build, not for runtime --> 457 </dependency> 458 <!-- https://mvnrepository.com/artifact/com.github.bohnman/package-info-maven-plugin --> 459 <dependency> 460 <groupId>com.github.bohnman</groupId> 461 <artifactId>package-info-maven-plugin</artifactId> 462 <version>${maven-package-info-plugin.version}</version> 463 <scope>provided</scope> 464 <!-- needed for build, not for runtime --> 465 </dependency> 466 <!-- HSQLDB for repository --> 467 <dependency> 468 <groupId>org.hsqldb</groupId> 469 <artifactId>hsqldb</artifactId> 470 <version>${hsqldb.version}</version> 471 </dependency> 472 <!-- CIYAM AT (automated transactions) --> 473 <dependency> 474 <groupId>org.ciyam</groupId> 475 <artifactId>AT</artifactId> 476 <version>${ciyam-at.version}</version> 477 </dependency> 478 <!-- UPnP support --> 479 <dependency> 480 <groupId>com.dosse</groupId> 481 <artifactId>WaifUPnP</artifactId> 482 <version>${upnp.version}</version> 483 </dependency> 484 <!-- Bitcoin support --> 485 <dependency> 486 <groupId>org.bitcoinj</groupId> 487 <artifactId>bitcoinj-core</artifactId> 488 <version>${bitcoinj.version}</version> 489 </dependency> 490 <!-- For Litecoin, etc. support, requires bitcoinj --> 491 <dependency> 492 <!-- TODO: Update altcoinj URL --> 493 <groupId>com.github.qortal</groupId> 494 <artifactId>altcoinj</artifactId> 495 <version>${altcoinj.version}</version> 496 </dependency> 497 <!-- Utilities --> 498 <dependency> 499 <groupId>com.googlecode.json-simple</groupId> 500 <artifactId>json-simple</artifactId> 501 <version>${json-simple.version}</version> 502 </dependency> 503 <dependency> 504 <groupId>org.json</groupId> 505 <artifactId>json</artifactId> 506 <version>${json.version}</version> 507 </dependency> 508 <dependency> 509 <groupId>org.apache.commons</groupId> 510 <artifactId>commons-text</artifactId> 511 <version>${commons-text.version}</version> 512 </dependency> 513 <dependency> 514 <groupId>commons-io</groupId> 515 <artifactId>commons-io</artifactId> 516 <version>${commons-io.version}</version> 517 </dependency> 518 <dependency> 519 <groupId>org.apache.commons</groupId> 520 <artifactId>commons-compress</artifactId> 521 <version>${commons-compress.version}</version> 522 </dependency> 523 <dependency> 524 <groupId>org.apache.commons</groupId> 525 <artifactId>commons-lang3</artifactId> 526 <version>${commons-lang3.version}</version> 527 </dependency> 528 <dependency> 529 <groupId>org.tukaani</groupId> 530 <artifactId>xz</artifactId> 531 <version>${xz.version}</version> 532 </dependency> 533 <!-- For bitset/bitmap compression --> 534 <dependency> 535 <groupId>io.druid</groupId> 536 <artifactId>extendedset</artifactId> 537 <version>${extendedset.version}</version> 538 <exclusions> 539 <!-- exclude old versions of jackson-annotations / jackson-core --> 540 <exclusion> 541 <groupId>com.fasterxml.jackson.core</groupId> 542 <artifactId>jackson-core</artifactId> 543 </exclusion> 544 <exclusion> 545 <groupId>com.fasterxml.jackson.core</groupId> 546 <artifactId>jackson-annotations</artifactId> 547 </exclusion> 548 <!-- exclude Netty, as included by io.druid.java.util --> 549 <exclusion> 550 <groupId>io.netty</groupId> 551 <artifactId>netty</artifactId> 552 </exclusion> 553 <!-- exclude async-http-client, as included by io.druid.java.util --> 554 <exclusion> 555 <groupId>org.asynchttpclient</groupId> 556 <artifactId>async-http-client</artifactId> 557 </exclusion> 558 <exclusion> 559 <groupId>io.druid</groupId> 560 <artifactId>java-util</artifactId> 561 </exclusion> 562 </exclusions> 563 </dependency> 564 <!-- For NTP --> 565 <dependency> 566 <groupId>commons-net</groupId> 567 <artifactId>commons-net</artifactId> 568 <version>${commons-net.version}</version> 569 </dependency> 570 <dependency> 571 <groupId>com.google.guava</groupId> 572 <artifactId>guava</artifactId> 573 <version>${guava.version}</version> 574 </dependency> 575 <!-- Logging: log4j2 --> 576 <dependency> 577 <groupId>org.apache.logging.log4j</groupId> 578 <artifactId>log4j-core</artifactId> 579 <version>${log4j.version}</version> 580 </dependency> 581 <dependency> 582 <groupId>org.apache.logging.log4j</groupId> 583 <artifactId>log4j-api</artifactId> 584 <version>${log4j.version}</version> 585 </dependency> 586 <!-- redirect slf4j to log4j2 --> 587 <dependency> 588 <groupId>org.apache.logging.log4j</groupId> 589 <artifactId>log4j-slf4j-impl</artifactId> 590 <version>${log4j.version}</version> 591 </dependency> 592 <!-- redirect java.utils.logging to log4j2 --> 593 <dependency> 594 <groupId>org.apache.logging.log4j</groupId> 595 <artifactId>log4j-jul</artifactId> 596 <version>${log4j.version}</version> 597 </dependency> 598 <!-- Logging: slf4j used by Jetty/Jersey --> 599 <dependency> 600 <groupId>org.slf4j</groupId> 601 <artifactId>slf4j-api</artifactId> 602 <version>${slf4j.version}</version> 603 </dependency> 604 <!-- Servlet related --> 605 <dependency> 606 <groupId>javax.servlet</groupId> 607 <artifactId>javax.servlet-api</artifactId> 608 <version>${javax.servlet-api.version}</version> 609 </dependency> 610 <dependency> 611 <groupId>javax.mail</groupId> 612 <artifactId>mail</artifactId> 613 <version>${mail.version}</version> 614 </dependency> 615 <!-- Unicode homoglyph utilities --> 616 <dependency> 617 <groupId>net.codebox</groupId> 618 <artifactId>homoglyph</artifactId> 619 <version>${homoglyph.version}</version> 620 </dependency> 621 <!-- Unicode support --> 622 <dependency> 623 <groupId>com.ibm.icu</groupId> 624 <artifactId>icu4j</artifactId> 625 <version>${icu4j.version}</version> 626 </dependency> 627 <dependency> 628 <groupId>com.ibm.icu</groupId> 629 <artifactId>icu4j-charset</artifactId> 630 <version>${icu4j.version}</version> 631 </dependency> 632 <!-- Jetty --> 633 <dependency> 634 <groupId>org.eclipse.jetty</groupId> 635 <artifactId>jetty-server</artifactId> 636 <version>${jetty.version}</version> 637 <classifier>config</classifier> 638 </dependency> 639 <dependency> 640 <groupId>org.eclipse.jetty</groupId> 641 <artifactId>jetty-servlet</artifactId> 642 <version>${jetty.version}</version> 643 <type>jar</type> 644 </dependency> 645 <dependency> 646 <groupId>org.eclipse.jetty</groupId> 647 <artifactId>jetty-servlets</artifactId> 648 <version>${jetty.version}</version> 649 </dependency> 650 <dependency> 651 <groupId>org.eclipse.jetty</groupId> 652 <artifactId>jetty-rewrite</artifactId> 653 <version>${jetty.version}</version> 654 </dependency> 655 <dependency> 656 <groupId>org.eclipse.jetty</groupId> 657 <artifactId>jetty-client</artifactId> 658 <version>${jetty.version}</version> 659 </dependency> 660 <!-- Websocket support --> 661 <dependency> 662 <groupId>org.eclipse.jetty.websocket</groupId> 663 <artifactId>javax-websocket-server-impl</artifactId> 664 <version>${jetty.version}</version> 665 </dependency> 666 <!-- Jersey --> 667 <dependency> 668 <groupId>org.glassfish.jersey.core</groupId> 669 <artifactId>jersey-server</artifactId> 670 <version>${jersey.version}</version> 671 </dependency> 672 <dependency> 673 <groupId>org.glassfish.jersey.containers</groupId> 674 <artifactId>jersey-container-servlet-core</artifactId> 675 <version>${jersey.version}</version> 676 </dependency> 677 <dependency> 678 <groupId>org.glassfish.jersey.inject</groupId> 679 <artifactId>jersey-hk2</artifactId> 680 <version>${jersey.version}</version> 681 <exclusions> 682 <exclusion> 683 <!-- exclude javax.inject-1.jar because other jersey modules include javax.inject v2+ --> 684 <groupId>javax.inject</groupId> 685 <artifactId>javax.inject</artifactId> 686 </exclusion> 687 </exclusions> 688 </dependency> 689 <dependency> 690 <groupId>org.glassfish.jersey.media</groupId> 691 <artifactId>jersey-media-moxy</artifactId> 692 <version>${jersey.version}</version> 693 </dependency> 694 <dependency> 695 <groupId>org.glassfish.jersey.media</groupId> 696 <artifactId>jersey-media-multipart</artifactId> 697 <version>${jersey.version}</version> 698 </dependency> 699 <!-- Swagger OpenAPI implementation --> 700 <dependency> 701 <groupId>io.swagger.core.v3</groupId> 702 <artifactId>swagger-jaxrs2</artifactId> 703 <version>${swagger-api.version}</version> 704 </dependency> 705 <dependency> 706 <groupId>io.swagger.core.v3</groupId> 707 <artifactId>swagger-jaxrs2-servlet-initializer</artifactId> 708 <version>${swagger-api.version}</version> 709 <exclusions> 710 <exclusion> 711 <!-- excluded because included in swagger-jaxrs2-servlet-initializer --> 712 <groupId>io.swagger.core.v3</groupId> 713 <artifactId>swagger-integration</artifactId> 714 </exclusion> 715 </exclusions> 716 </dependency> 717 <dependency> 718 <groupId>org.webjars</groupId> 719 <artifactId>swagger-ui</artifactId> 720 <version>${swagger-ui.version}</version> 721 </dependency> 722 <!-- Testing --> 723 <!-- disabled pending better Eclipse support 724 <dependency> 725 <groupId>org.junit.jupiter</groupId> 726 <artifactId>junit-jupiter-engine</artifactId> 727 <version>${junit-jupiter-engine.version}</version> 728 </dependency> 729 <dependency> 730 <groupId>org.hamcrest</groupId> 731 <artifactId>hamcrest-library</artifactId> 732 <version>${hamcrest-library.version}</version> 733 </dependency> 734 --> 735 <!-- BouncyCastle for crypto, including TLS secure networking --> 736 <dependency> 737 <groupId>org.bouncycastle</groupId> 738 <artifactId>bcprov-jdk15on</artifactId> 739 <version>${bouncycastle.version}</version> 740 </dependency> 741 <dependency> 742 <groupId>org.bouncycastle</groupId> 743 <artifactId>bctls-jdk15on</artifactId> 744 <version>${bouncycastle.version}</version> 745 </dependency> 746 <dependency> 747 <groupId>org.jsoup</groupId> 748 <artifactId>jsoup</artifactId> 749 <version>${jsoup.version}</version> 750 </dependency> 751 <dependency> 752 <groupId>io.github.java-diff-utils</groupId> 753 <artifactId>java-diff-utils</artifactId> 754 <version>${java-diff-utils.version}</version> 755 </dependency> 756 <dependency> 757 <groupId>io.grpc</groupId> 758 <artifactId>grpc-netty</artifactId> 759 <version>${grpc.version}</version> 760 </dependency> 761 <dependency> 762 <groupId>io.grpc</groupId> 763 <artifactId>grpc-protobuf</artifactId> 764 <version>${grpc.version}</version> 765 </dependency> 766 <dependency> 767 <groupId>io.grpc</groupId> 768 <artifactId>grpc-stub</artifactId> 769 <version>${grpc.version}</version> 770 </dependency> 771 <dependency> 772 <groupId>com.google.protobuf</groupId> 773 <artifactId>protobuf-java</artifactId> 774 <version>${protobuf.version}</version> 775 </dependency> 776 <dependency> 777 <groupId>com.j256.simplemagic</groupId> 778 <artifactId>simplemagic</artifactId> 779 <version>${simplemagic.version}</version> 780 </dependency> 781 <!-- JAXB runtime for WADL support --> 782 <dependency> 783 <groupId>org.glassfish.jaxb</groupId> 784 <artifactId>jaxb-runtime</artifactId> 785 <version>${jaxb-runtime.version}</version> 786 </dependency> 787 </dependencies> 788 </project>