Skip to content

Commit bb0c233

Browse files
authored
Implement dynamic linking with Apache HttpComponents Client 5.x API plugin (#63)
1 parent a875df2 commit bb0c233

File tree

2 files changed

+50
-60
lines changed

2 files changed

+50
-60
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
This plugin exposes the [docker-java](http://github.com/docker-java/docker-java) API to Jenkins plugins.
44
Plugins using docker-java should depend on this plugin and not directly on docker-java.
55

6-
Only Netty based transport is available, JAX-RS default implementation doesn't work.
6+
Only Apache HttpClient 5 and Netty based transports are available; the Jersey transport does not work.
77

88
# Environment
99

pom.xml

Lines changed: 49 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
<properties>
2828
<revision>3.2.13</revision>
2929
<changelist>999999-SNAPSHOT</changelist>
30-
<jenkins.version>2.361.3</jenkins.version>
30+
<jenkins.version>2.361.4</jenkins.version>
3131
<gitHubRepo>jenkinsci/${project.artifactId}-plugin</gitHubRepo>
3232
<hpi.compatibleSinceVersion>3.2</hpi.compatibleSinceVersion>
3333
</properties>
@@ -57,7 +57,7 @@
5757
<dependency>
5858
<groupId>io.jenkins.tools.bom</groupId>
5959
<artifactId>bom-2.361.x</artifactId>
60-
<version>1798.vc671fe94856f</version>
60+
<version>2081.v85885a_d2e5c5</version>
6161
<scope>import</scope>
6262
<type>pom</type>
6363
</dependency>
@@ -70,117 +70,107 @@
7070
<artifactId>docker-java</artifactId>
7171
<version>${revision}</version>
7272
<exclusions>
73-
<!-- use the version supplied by jackson2-api -->
73+
<!-- Provided by jackson2-api plugin -->
7474
<exclusion>
7575
<groupId>com.fasterxml.jackson.core</groupId>
76-
<artifactId>jackson-databind</artifactId>
76+
<artifactId>jackson-annotations</artifactId>
7777
</exclusion>
7878
<exclusion>
7979
<groupId>com.fasterxml.jackson.core</groupId>
80-
<artifactId>jackson-annotations</artifactId>
80+
<artifactId>jackson-core</artifactId>
8181
</exclusion>
8282
<exclusion>
83-
<groupId>com.fasterxml.jackson.jaxrs</groupId>
84-
<artifactId>jackson-jaxrs-json-provider</artifactId>
83+
<groupId>com.fasterxml.jackson.core</groupId>
84+
<artifactId>jackson-databind</artifactId>
8585
</exclusion>
86-
87-
<!-- use the version supplied by bouncycastle-api -->
86+
<!-- Deprecated transport -->
8887
<exclusion>
89-
<groupId>org.bouncycastle</groupId>
90-
<artifactId>bcpkix-jdk15on</artifactId>
88+
<groupId>com.github.docker-java</groupId>
89+
<artifactId>docker-java-transport-jersey</artifactId>
9190
</exclusion>
92-
93-
<!-- use versions supplied with Jenkins -->
91+
<!-- Provided by Jenkins core -->
9492
<exclusion>
95-
<groupId>commons-codec</groupId>
96-
<artifactId>commons-codec</artifactId>
93+
<groupId>com.google.guava</groupId>
94+
<artifactId>guava</artifactId>
9795
</exclusion>
9896
<exclusion>
99-
<groupId>commons-io</groupId>
100-
<artifactId>commons-io</artifactId>
97+
<groupId>commons-compress</groupId>
98+
<artifactId>commons-compress</artifactId>
10199
</exclusion>
102100
<exclusion>
103-
<groupId>commons-lang</groupId>
104-
<artifactId>commons-lang</artifactId>
101+
<groupId>commons-io</groupId>
102+
<artifactId>commons-io</artifactId>
105103
</exclusion>
104+
<!-- Provided by commons-lang3-api plugin -->
106105
<exclusion>
107106
<groupId>org.apache.commons</groupId>
108107
<artifactId>commons-lang3</artifactId>
109108
</exclusion>
109+
<!-- Provided by bouncycastle-api-plugin -->
110110
<exclusion>
111-
<groupId>org.slf4j</groupId>
112-
<artifactId>slf4j-api</artifactId>
113-
</exclusion>
114-
<exclusion>
115-
<groupId>org.slf4j</groupId>
116-
<artifactId>jcl-over-slf4j</artifactId>
117-
</exclusion>
118-
119-
<!-- disable JAX-RS transport, otherwise, it requires shading and messy stuff -->
120-
<exclusion>
121-
<groupId>org.glassfish.jersey.connectors</groupId>
122-
<artifactId>jersey-apache-connector</artifactId>
123-
</exclusion>
124-
<exclusion>
125-
<groupId>org.apache.httpcomponents</groupId>
126-
<artifactId>httpclient</artifactId>
127-
</exclusion>
128-
<exclusion>
129-
<groupId>org.apache.httpcomponents</groupId>
130-
<artifactId>httpcore</artifactId>
131-
</exclusion>
132-
<exclusion>
133-
<groupId>org.glassfish.jersey.core</groupId>
134-
<artifactId>jersey-client</artifactId>
111+
<groupId>org.bouncycastle</groupId>
112+
<artifactId>bcpkix-jdk15on</artifactId>
135113
</exclusion>
136114
<exclusion>
137-
<groupId>org.glassfish.jersey.inject</groupId>
138-
<artifactId>jersey-hk2</artifactId>
115+
<groupId>org.bouncycastle</groupId>
116+
<artifactId>bcprov-jdk15on</artifactId>
139117
</exclusion>
140-
141-
<!-- junixsocket > 2.0 is targetted to Java 9 -->
118+
<!-- Provided by Jenkins core -->
142119
<exclusion>
143-
<groupId>com.kohlschutter.junixsocket</groupId>
144-
<artifactId>junixsocket-common</artifactId>
120+
<groupId>org.slf4j</groupId>
121+
<artifactId>jcl-over-slf4j</artifactId>
145122
</exclusion>
146123
<exclusion>
147-
<groupId>com.kohlschutter.junixsocket</groupId>
148-
<artifactId>junixsocket-native-common</artifactId>
124+
<groupId>org.slf4j</groupId>
125+
<artifactId>slf4j-api</artifactId>
149126
</exclusion>
150127
</exclusions>
151128
</dependency>
152-
153129
<dependency>
154130
<groupId>com.github.docker-java</groupId>
155131
<artifactId>docker-java-transport-httpclient5</artifactId>
156132
<version>${revision}</version>
157133
<exclusions>
158134
<!-- Provided by Jenkins core -->
135+
<exclusion>
136+
<groupId>commons-codec</groupId>
137+
<artifactId>commons-codec</artifactId>
138+
</exclusion>
159139
<exclusion>
160140
<groupId>net.java.dev.jna</groupId>
161141
<artifactId>jna</artifactId>
162142
</exclusion>
143+
<!-- Provided by apache-httpcomponents-client-5-api plugin -->
144+
<exclusion>
145+
<groupId>org.apache.httpcomponents.client5</groupId>
146+
<artifactId>httpclient5</artifactId>
147+
</exclusion>
148+
<exclusion>
149+
<groupId>org.apache.httpcomponents.client5</groupId>
150+
<artifactId>httpcore5</artifactId>
151+
</exclusion>
152+
<!-- Provided by Jenkins core -->
163153
<exclusion>
164154
<groupId>org.slf4j</groupId>
165155
<artifactId>slf4j-api</artifactId>
166156
</exclusion>
167157
</exclusions>
168158
</dependency>
169-
159+
<dependency>
160+
<groupId>io.jenkins.plugins</groupId>
161+
<artifactId>apache-httpcomponents-client-5-api</artifactId>
162+
</dependency>
170163
<dependency>
171164
<groupId>io.jenkins.plugins</groupId>
172165
<artifactId>commons-lang3-api</artifactId>
173166
</dependency>
174-
175167
<dependency>
176168
<groupId>org.jenkins-ci.plugins</groupId>
177-
<artifactId>jackson2-api</artifactId>
169+
<artifactId>bouncycastle-api</artifactId>
178170
</dependency>
179-
180171
<dependency>
181-
<groupId>org.hamcrest</groupId>
182-
<artifactId>hamcrest-core</artifactId>
183-
<scope>test</scope>
172+
<groupId>org.jenkins-ci.plugins</groupId>
173+
<artifactId>jackson2-api</artifactId>
184174
</dependency>
185175
<dependency>
186176
<groupId>org.mockito</groupId>

0 commit comments

Comments
 (0)