File: pom.xml

package info (click to toggle)
jsch 0.2.19-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 3,980 kB
  • sloc: java: 36,477; xml: 1,352; sh: 184; python: 57; makefile: 2
file content (925 lines) | stat: -rw-r--r-- 42,719 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.github.mwiede</groupId>
    <artifactId>jsch</artifactId>
    <packaging>jar</packaging>
    <version>0.2.19</version>
    <name>JSch</name>
    <url>https://github.com/mwiede/jsch</url>
    <description>JSch is a pure Java implementation of SSH2</description>
    <scm>
        <connection>scm:git:https://github.com/mwiede/jsch.git</connection>
        <developerConnection>scm:git:https://github.com/mwiede/jsch.git</developerConnection>
        <url>https://github.com/mwiede/jsch</url>
        <tag>jsch-0.2.19</tag>
    </scm>
    <distributionManagement>
        <snapshotRepository>
            <id>ossrh</id>
            <url>https://oss.sonatype.org/content/repositories/snapshots</url>
        </snapshotRepository>
        <repository>
            <id>ossrh</id>
            <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
        </repository>
    </distributionManagement>
    <issueManagement>
        <system>GitHub</system>
        <url>https://github.com/mwiede/jsch/issues</url>
    </issueManagement>
    <ciManagement>
        <system>GitHub</system>
        <url>https://github.com/mwiede/jsch/actions</url>
    </ciManagement>
    <developers>
        <developer>
            <id>ymnk</id>
            <name>Atsuhiko Yamanaka</name>
            <email>ymnk at jcraft D0t com</email>
            <url>https://github.com/ymnk</url>
            <organization>JCraft,Inc.</organization>
            <organizationUrl>http://www.jcraft.com/</organizationUrl>
            <roles>
                <role>architect</role>
                <role>developer</role>
            </roles>
            <timezone>+9</timezone>
        </developer>
        <developer>
            <id>mwiede</id>
            <name>Matthias Wiedemann</name>
            <email>mwiede@gmx.de</email>
            <organization>Community</organization>
            <organizationUrl>https://github.com/mwiede</organizationUrl>
        </developer>
        <developer>
            <id>norrisjeremy</id>
            <name>Jeremy Norris</name>
            <organization>Community</organization>
            <organizationUrl>https://github.com/norrisjeremy</organizationUrl>
        </developer>
    </developers>
    <licenses>
        <license>
            <name>Revised BSD</name>
            <url>https://github.com/mwiede/jsch/blob/master/LICENSE.txt</url>
        </license>
        <license>
            <name>Revised BSD</name>
            <url>https://github.com/mwiede/jsch/blob/master/LICENSE.JZlib.txt</url>
        </license>
        <license>
            <name>ISC</name>
            <url>https://github.com/mwiede/jsch/blob/master/LICENSE.jBCrypt.txt</url>
        </license>
    </licenses>
    <properties>
        <project.build.outputTimestamp>2024-08-06T09:05:46Z</project.build.outputTimestamp>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <skipITs>true</skipITs>
        <junixsocket.version>2.10.0</junixsocket.version>
        <jna.version>5.14.0</jna.version>
        <log4j.version>2.23.1</log4j.version>
        <errorprone.version>2.29.2</errorprone.version>
        <surefire.version>3.3.1</surefire.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.bouncycastle</groupId>
            <artifactId>bcprov-jdk18on</artifactId>
            <version>1.78.1</version>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>com.kohlschutter.junixsocket</groupId>
            <artifactId>junixsocket-common</artifactId>
            <version>${junixsocket.version}</version>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>com.kohlschutter</groupId>
            <artifactId>compiler-annotations</artifactId>
            <version>1.7.3</version>
            <scope>provided</scope>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>net.java.dev.jna</groupId>
            <artifactId>jna-jpms</artifactId>
            <version>${jna.version}</version>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>net.java.dev.jna</groupId>
            <artifactId>jna-platform-jpms</artifactId>
            <version>${jna.version}</version>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-api</artifactId>
            <version>${log4j.version}</version>
            <optional>true</optional>
            <exclusions>
                <exclusion>
                    <groupId>org.osgi</groupId>
                    <artifactId>org.osgi.core</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>2.0.13</version>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.junit.jupiter</groupId>
            <artifactId>junit-jupiter</artifactId>
            <version>5.10.3</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.testcontainers</groupId>
            <artifactId>junit-jupiter</artifactId>
            <version>1.20.1</version>
            <scope>test</scope>
            <!-- Rely upon jna-jpms brought in above -->
            <exclusions>
                <exclusion>
                    <groupId>net.java.dev.jna</groupId>
                    <artifactId>jna</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.slf4j</groupId>
                    <artifactId>slf4j-api</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>commons-codec</groupId>
            <artifactId>commons-codec</artifactId>
            <version>1.17.1</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>2.16.1</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>com.kohlschutter.junixsocket</groupId>
            <artifactId>junixsocket-native-common</artifactId>
            <version>${junixsocket.version}</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-core-test</artifactId>
            <version>${log4j.version}</version>
            <scope>test</scope>
            <!-- Keep out all the extraneous dependencies -->
            <exclusions>
                <exclusion>
                    <groupId>org.junit-pioneer</groupId>
                    <artifactId>junit-pioneer</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.apache.maven</groupId>
                    <artifactId>maven-core</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.assertj</groupId>
                    <artifactId>assertj-core</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>commons-io</groupId>
                    <artifactId>commons-io</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.apache.commons</groupId>
                    <artifactId>commons-lang3</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.hamcrest</groupId>
                    <artifactId>hamcrest</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>com.google.code.java-allocation-instrumenter</groupId>
                    <artifactId>java-allocation-instrumenter</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>junit</groupId>
                    <artifactId>junit</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.junit.platform</groupId>
                    <artifactId>junit-platform-commons</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.springframework</groupId>
                    <artifactId>spring-test</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>com.github.valfirst</groupId>
            <artifactId>slf4j-test</artifactId>
            <version>3.0.1</version>
            <scope>test</scope>
        </dependency>
    </dependencies>
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>com.google.errorprone</groupId>
                <artifactId>error_prone_annotations</artifactId>
                <version>${errorprone.version}</version>
            </dependency>
        </dependencies>
    </dependencyManagement>
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-enforcer-plugin</artifactId>
                <version>3.5.0</version>
                <executions>
                    <execution>
                        <id>enforce-java</id>
                        <goals>
                            <goal>enforce</goal>
                        </goals>
                        <configuration>
                            <rules>
                                <requireJavaVersion>
                                    <version>17</version>
                                </requireJavaVersion>
                                <dependencyConvergence />
                                <banDuplicatePomDependencyVersions />
                                <reactorModuleConvergence />
                                <requireUpperBoundDeps />
                            </rules>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>flatten-maven-plugin</artifactId>
                <version>1.6.0</version>
                <configuration>
                    <flattenMode>ossrh</flattenMode>
                    <flattenDependencyMode>all</flattenDependencyMode>
                </configuration>
                <executions>
                    <execution>
                        <id>flatten</id>
                        <phase>process-resources</phase>
                        <goals>
                            <goal>flatten</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>flatten.clean</id>
                        <phase>clean</phase>
                        <goals>
                            <goal>clean</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>build-helper-maven-plugin</artifactId>
                <version>3.6.0</version>
                <executions>
                    <execution>
                        <goals>
                            <goal>regex-property</goal>
                        </goals>
                        <configuration>
                            <name>versionWithoutMinus</name>
                            <value>${project.version}</value>
                            <regex>-</regex>
                            <replacement>_</replacement>
                            <failIfNoMatch>false</failIfNoMatch>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>templating-maven-plugin</artifactId>
                <version>3.0.0</version>
                <executions>
                    <execution>
                        <goals>
                            <goal>filter-sources</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.13.0</version>
                <configuration>
                    <release>8</release>
                    <showDeprecation>true</showDeprecation>
                    <showWarnings>true</showWarnings>
                    <failOnWarning>true</failOnWarning>
                    <compilerArgs>
                        <arg>-Xlint:all,-processing,-classfile,-options</arg>
                    </compilerArgs>
                    <excludes>
                        <exclude>**/PageantConnector.java</exclude><!-- PageantConnector is for MS Windows -->
                    </excludes>
                </configuration>
                <executions>
                    <execution>
                        <id>default-compile-9</id>
                        <goals>
                            <goal>compile</goal>
                        </goals>
                        <configuration>
                            <compileSourceRoots>
                                <compileSourceRoot>${project.basedir}/src/main/java9</compileSourceRoot>
                            </compileSourceRoots>
                            <multiReleaseOutput>true</multiReleaseOutput>
                            <release>9</release>
                        </configuration>
                    </execution>
                    <execution>
                        <id>default-compile-10</id>
                        <goals>
                            <goal>compile</goal>
                        </goals>
                        <configuration>
                            <compileSourceRoots>
                                <compileSourceRoot>${project.basedir}/src/main/java10</compileSourceRoot>
                            </compileSourceRoots>
                            <multiReleaseOutput>true</multiReleaseOutput>
                            <release>10</release>
                        </configuration>
                    </execution>
                    <execution>
                        <id>default-compile-11</id>
                        <goals>
                            <goal>compile</goal>
                        </goals>
                        <configuration>
                            <compileSourceRoots>
                                <compileSourceRoot>${project.basedir}/src/main/java11</compileSourceRoot>
                            </compileSourceRoots>
                            <multiReleaseOutput>true</multiReleaseOutput>
                            <release>11</release>
                        </configuration>
                    </execution>
                    <execution>
                        <id>default-compile-15</id>
                        <goals>
                            <goal>compile</goal>
                        </goals>
                        <configuration>
                            <compileSourceRoots>
                                <compileSourceRoot>${project.basedir}/src/main/java15</compileSourceRoot>
                            </compileSourceRoots>
                            <multiReleaseOutput>true</multiReleaseOutput>
                            <release>15</release>
                        </configuration>
                    </execution>
                    <execution>
                        <id>default-compile-16</id>
                        <goals>
                            <goal>compile</goal>
                        </goals>
                        <configuration>
                            <compileSourceRoots>
                                <compileSourceRoot>${project.basedir}/src/main/java16</compileSourceRoot>
                            </compileSourceRoots>
                            <multiReleaseOutput>true</multiReleaseOutput>
                            <release>16</release>
                        </configuration>
                    </execution>
                    <execution>
                        <id>default-testCompile</id>
                        <phase>test-compile</phase>
                        <configuration>
                            <testExcludes>
                               <exclude>**/AbstractBufferMargin.java</exclude><!-- Needs org.testcontainers -->
                               <exclude>**/Algorithms2IT.java</exclude><!-- Needs org.testcontainers -->
                               <exclude>**/Algorithms3IT.java</exclude><!-- Needs org.testcontainers -->
                               <exclude>**/Algorithms4IT.java</exclude><!-- Needs org.testcontainers -->
                               <exclude>**/AlgorithmsIT.java</exclude><!-- Needs org.testcontainers -->
                               <exclude>**/ExtInfoInAuthIT.java</exclude><!-- Needs org.testcontainers -->
                               <exclude>**/JSchAlgoNegoFailExceptionIT.java</exclude><!-- Needs org.testcontainers -->
                               <exclude>**/JSchStrictKexExceptionIT.java</exclude><!-- Needs org.testcontainers -->
                               <exclude>**/KeyPair2IT.java</exclude><!-- Needs org.testcontainers -->
                               <exclude>**/KeyPairIT.java</exclude><!-- Needs org.testcontainers -->
                               <exclude>**/Log4j2LoggerTest.java</exclude><!-- Needs org.apache.logging.log4j.core.test -->
                               <exclude>**/OpenSSH74ServerSigAlgsIT.java</exclude><!-- Needs org.testcontainers -->
                               <exclude>**/PktSize128IT.java</exclude><!-- Extends AbstractBufferMargin, which needs org.testcontainers -->
                               <exclude>**/PktSize160IT.java</exclude><!-- Extends AbstractBufferMargin, which needs org.testcontainers -->
                               <exclude>**/PktSize192IT.java</exclude><!-- Extends AbstractBufferMargin, which needs org.testcontainers -->
                               <exclude>**/PktSize32768IT.java</exclude><!-- Extends AbstractBufferMargin, which needs org.testcontainers -->
                               <exclude>**/ServerSigAlgsIT.java</exclude><!-- Needs org.testcontainers -->
                               <exclude>**/SessionReconnectIT.java</exclude><!-- Needs org.testcontainers -->
                               <exclude>**/Slf4jLoggerTest.java</exclude><!-- Needs com.github.valfirst.slf4jtest -->
                               <exclude>**/SSHAgentIT.java</exclude><!-- Needs org.testcontainers AND unpackaged LibC class in libjna-java to initialize test class -->
                               <exclude>**/StrictKexIT.java</exclude><!-- Needs org.testcontainers -->
                               <exclude>**/UserAuthIT.java</exclude><!-- Needs org.testcontainers -->
                            </testExcludes>
                        </configuration>
                        <goals>
                            <goal>testCompile</goal>
                        </goals>
                     </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>biz.aQute.bnd</groupId>
                <artifactId>bnd-maven-plugin</artifactId>
                <version>7.0.0</version>
                <configuration>
                    <bnd><![CDATA[
                        -noextraheaders: false
                        -removeheaders: \
                            Bnd-LastModified,\
                            Bundle-Developers,\
                            Bundle-DocURL,\
                            Bundle-SCM,\
                            Created-By,\
                            Private-Package
                        Bundle-SymbolicName: ${project.groupId}.${project.artifactId}
                        Export-Package: com.jcraft.jsch;-noimport:=true
                        Import-Package: \
                            com.sun.jna*;version="${range;[=0,+)}";resolution:=optional,\
                            org.apache.logging.log4j*;version="${range;[=0,4)}";resolution:=optional,\
                            org.bouncycastle*;version="[1.76,${versionmask;+})";resolution:=optional,\
                            org.slf4j*;version="[1.7,${versionmask;+})";resolution:=optional,\
                            org.newsclub.net.unix;resolution:=optional,\
                            org.ietf.jgss;resolution:=optional,\
                            !java.*,\
                            *
                        ]]></bnd>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>${surefire.version}</version>
                <configuration>
                    <trimStackTrace>false</trimStackTrace>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-failsafe-plugin</artifactId>
                <version>${surefire.version}</version>
                <configuration>
                    <trimStackTrace>false</trimStackTrace>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>integration-test</goal>
                            <goal>verify</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-clean-plugin</artifactId>
                <version>3.4.0</version>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-resources-plugin</artifactId>
                <version>3.3.1</version>
                <executions>
                    <execution>
                        <id>copy-licenses</id>
                        <phase>process-resources</phase>
                        <goals>
                            <goal>copy-resources</goal>
                        </goals>
                        <configuration>
                            <outputDirectory>${project.build.outputDirectory}/META-INF</outputDirectory>
                            <resources>
                                <resource>
                                    <directory>${project.basedir}</directory>
                                    <filtering>false</filtering>
                                    <includes>
                                        <include>LICENSE*</include>
                                    </includes>
                                </resource>
                            </resources>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <version>3.4.2</version>
                <configuration>
                    <archive>
                        <manifest>
                            <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
                            <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
                        </manifest>
                        <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
                    </archive>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-assembly-plugin</artifactId>
                <version>3.7.1</version>
                <executions>
                    <execution>
                        <id>attach-sources</id>
                        <phase>package</phase>
                        <goals>
                            <goal>single</goal>
                        </goals>
                        <configuration>
                            <descriptors>
                                <descriptor>${project.basedir}/src/assembly/sources.xml</descriptor>
                            </descriptors>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-javadoc-plugin</artifactId>
                <version>3.8.0</version>
                <configuration>
                    <quiet>true</quiet>
                    <doclint>none</doclint>
                    <subpackages>com.jcraft.jsch</subpackages>
                    <excludePackageNames>com.jcraft.jsch.*</excludePackageNames>
                    <sourcepath>${project.build.sourceDirectory}:${project.build.directory}/generated-sources/java-templates:${project.basedir}/src/main/java9:${project.basedir}/src/main/java10:${project.basedir}/src/main/java11:${project.basedir}/src/main/java15:${project.basedir}/src/main/java16</sourcepath>
                </configuration>
                <executions>
                    <execution>
                        <id>attach-javadocs</id>
                        <goals>
                            <goal>jar</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.cyclonedx</groupId>
                <artifactId>cyclonedx-maven-plugin</artifactId>
                <version>2.8.1</version>
                <configuration>
                    <includeProvidedScope>false</includeProvidedScope>
                    <includeSystemScope>false</includeSystemScope>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>makeBom</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-release-plugin</artifactId>
                <version>3.1.1</version>
                <configuration>
                    <useReleaseProfile>false</useReleaseProfile>
                    <releaseProfiles>release</releaseProfiles>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-gpg-plugin</artifactId>
                <version>3.2.4</version>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-deploy-plugin</artifactId>
                <version>3.1.2</version>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-install-plugin</artifactId>
                <version>3.1.2</version>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-site-plugin</artifactId>
                <version>3.12.1</version>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-dependency-plugin</artifactId>
                <version>3.7.1</version>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-checkstyle-plugin</artifactId>
                <version>3.4.0</version>
                <configuration>
                    <failOnViolation>true</failOnViolation>
                    <logViolationsToConsole>true</logViolationsToConsole>
                    <violationSeverity>warning</violationSeverity>
                    <configLocation>google_checks.xml</configLocation>
                    <sourceDirectories>
                        <sourceDirectory>${project.build.sourceDirectory}</sourceDirectory>
                        <sourceDirectory>${project.build.testSourceDirectory}</sourceDirectory>
                        <sourceDirectory>${project.basedir}/examples</sourceDirectory>
                        <sourceDirectory>${project.basedir}/src/main/java9</sourceDirectory>
                        <sourceDirectory>${project.basedir}/src/main/java10</sourceDirectory>
                        <sourceDirectory>${project.basedir}/src/main/java11</sourceDirectory>
                        <sourceDirectory>${project.basedir}/src/main/java15</sourceDirectory>
                        <sourceDirectory>${project.basedir}/src/main/java16</sourceDirectory>
                        <sourceDirectory>${project.basedir}/src/main/java-templates</sourceDirectory>
                    </sourceDirectories>
                </configuration>
            </plugin>
            <plugin>
                <groupId>net.revelc.code.formatter</groupId>
                <artifactId>formatter-maven-plugin</artifactId>
                <version>2.24.1</version>
                <configuration>
                    <configFile>${project.basedir}/eclipse-java-google-style.xml</configFile>
                    <encoding>UTF-8</encoding>
                    <directories>
                        <directory>${project.build.sourceDirectory}</directory>
                        <directory>${project.build.testSourceDirectory}</directory>
                        <directory>${project.basedir}/examples</directory>
                        <directory>${project.basedir}/src/main/java9</directory>
                        <directory>${project.basedir}/src/main/java10</directory>
                        <directory>${project.basedir}/src/main/java11</directory>
                        <directory>${project.basedir}/src/main/java15</directory>
                        <directory>${project.basedir}/src/main/java16</directory>
                        <directory>${project.basedir}/src/main/java-templates</directory>
                    </directories>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.jacoco</groupId>
                <artifactId>jacoco-maven-plugin</artifactId>
                <version>0.8.12</version>
                <configuration>
                    <excludes>
                        <exclude>com/jcraft/jsch/JavaVersion.class</exclude>
                        <exclude>com/jcraft/jsch/JplLogger.class</exclude>
                        <exclude>com/jcraft/jsch/UnixDomainSocketFactory.class</exclude>
                        <exclude>com/jcraft/jsch/jce/KeyPairGenEdDSA.class</exclude>
                        <exclude>com/jcraft/jsch/jce/SignatureEd25519.class</exclude>
                        <exclude>com/jcraft/jsch/jce/SignatureEd448.class</exclude>
                        <exclude>com/jcraft/jsch/jce/XDH.class</exclude>
                        <exclude>META-INF/versions/9/com/jcraft/jsch/JavaVersion.class</exclude>
                        <exclude>META-INF/versions/10/com/jcraft/jsch/JavaVersion.class</exclude>
                    </excludes>
                </configuration>
            </plugin>
            <plugin>
                <groupId>de.thetaphi</groupId>
                <artifactId>forbiddenapis</artifactId>
                <version>3.7</version>
                <configuration>
                    <bundledSignatures>
                        <bundledSignature>jdk-unsafe</bundledSignature>
                        <bundledSignature>jdk-deprecated</bundledSignature>
                        <bundledSignature>jdk-non-portable</bundledSignature>
                        <bundledSignature>jdk-reflection</bundledSignature>
                    </bundledSignatures>
                    <suppressAnnotations>
                        <suppressAnnotation>com.jcraft.jsch.annotations.SuppressForbiddenApi</suppressAnnotation>
                    </suppressAnnotations>
                </configuration>
            </plugin>
        </plugins>
    </build>
    <profiles>
        <profile>
            <id>release</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-gpg-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>sign-artifacts</id>
                                <phase>verify</phase>
                                <goals>
                                    <goal>sign</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>coverage</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.jacoco</groupId>
                        <artifactId>jacoco-maven-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>default-prepare-agent</id>
                                <goals>
                                    <goal>prepare-agent</goal>
                                </goals>
                            </execution>
                            <execution>
                                <id>default-prepare-agent-integration</id>
                                <goals>
                                    <goal>prepare-agent-integration</goal>
                                </goals>
                            </execution>
                            <execution>
                                <id>default-report</id>
                                <goals>
                                    <goal>report</goal>
                                </goals>
                            </execution>
                            <execution>
                                <id>default-report-integration</id>
                                <goals>
                                    <goal>report-integration</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>errorprone</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-compiler-plugin</artifactId>
                        <configuration>
                            <fork>true</fork>
                            <compilerArgs combine.children="append">
                                <arg>-XDcompilePolicy=simple</arg>
                                <arg>-Xplugin:ErrorProne</arg>
                                <arg>-J--add-exports=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED</arg>
                                <arg>-J--add-exports=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED</arg>
                                <arg>-J--add-exports=jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED</arg>
                                <arg>-J--add-exports=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED</arg>
                                <arg>-J--add-exports=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED</arg>
                                <arg>-J--add-exports=jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED</arg>
                                <arg>-J--add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED</arg>
                                <arg>-J--add-exports=jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED</arg>
                                <arg>-J--add-opens=jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED</arg>
                            </compilerArgs>
                            <annotationProcessorPaths>
                                <path>
                                    <groupId>com.google.errorprone</groupId>
                                    <artifactId>error_prone_core</artifactId>
                                    <version>${errorprone.version}</version>
                                </path>
                            </annotationProcessorPaths>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>format</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>net.revelc.code.formatter</groupId>
                        <artifactId>formatter-maven-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>format</id>
                                <goals>
                                    <goal>format</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>formatvalidation</id>
            <activation>
                <jdk>[17,)</jdk>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <groupId>net.revelc.code.formatter</groupId>
                        <artifactId>formatter-maven-plugin</artifactId>
                        <executions>
                            <execution>
                                <phase>verify</phase>
                                <goals>
                                    <goal>validate</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>checkstyle</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-checkstyle-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>validate</id>
                                <phase>validate</phase>
                                <goals>
                                    <goal>check</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>forbiddenapis</id>
            <activation>
                <jdk>[16,)</jdk>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <groupId>de.thetaphi</groupId>
                        <artifactId>forbiddenapis</artifactId>
                        <configuration>
                            <releaseVersion>16</releaseVersion>
                        </configuration>
                        <executions>
                            <execution>
                                <id>check</id>
                                <goals>
                                    <goal>check</goal>
                                </goals>
                                <configuration>
                                    <bundledSignatures combine.children="append">
                                        <bundledSignature>jdk-system-out</bundledSignature>
                                    </bundledSignatures>
                                </configuration>
                            </execution>
                            <execution>
                                <id>testCheck</id>
                                <goals>
                                    <goal>testCheck</goal>
                                </goals>
                                <configuration>
                                    <bundledSignatures combine.children="append">
                                        <bundledSignature>commons-io-unsafe-2.14.0</bundledSignature>
                                    </bundledSignatures>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>bnd</id>
            <activation>
                <jdk>[17,)</jdk>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <groupId>biz.aQute.bnd</groupId>
                        <artifactId>bnd-maven-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>bnd-process</id>
                                <phase>process-classes</phase>
                                <goals>
                                    <goal>bnd-process</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>
</project>