|
7 | 7 | <modelVersion>4.0.0</modelVersion> |
8 | 8 | <groupId>com.codedx</groupId> |
9 | 9 | <artifactId>codedx-bamboo-plugin</artifactId> |
10 | | - <version>2.0.1</version> |
| 10 | + <version>3.0.0</version> |
11 | 11 |
|
12 | 12 | <organization> |
13 | 13 | <name>Code Dx</name> |
|
19 | 19 | <packaging>atlassian-plugin</packaging> |
20 | 20 |
|
21 | 21 | <properties> |
22 | | - <!-- note: change to 9.0.0 for local development with `atlas-run` etc., prior versions have a broken UI --> |
23 | | - <bamboo.version>10.2.0</bamboo.version> |
| 22 | + <bamboo.version>12.0.0</bamboo.version> |
24 | 23 | <bamboo.data.version>${bamboo.version}</bamboo.data.version> |
25 | | - <amps.version>9.11.6</amps.version> |
| 24 | + <amps.version>9.12.1</amps.version> |
26 | 25 | <plugin.testrunner.version>2.0.2</plugin.testrunner.version> |
27 | 26 | <atlassian.spring.scanner.version>6.0.2</atlassian.spring.scanner.version> |
28 | 27 | <jersey-version>3.1.11</jersey-version> |
|
57 | 56 | <dependency> |
58 | 57 | <groupId>com.codedx</groupId> |
59 | 58 | <artifactId>jersey-shaded</artifactId> |
60 | | - <version>2.0.1</version> |
| 59 | + <version>3.0.0</version> |
61 | 60 | <exclusions> |
62 | 61 | <exclusion> |
63 | 62 | <groupId>org.glassfish.jersey.core</groupId> |
|
155 | 154 | </dependency> |
156 | 155 |
|
157 | 156 | <!-- |
158 | | - jakarta.ws.rs-api is provided by Bamboo (JAX-RS 2.x), but we need JAX-RS 3.1 |
159 | | - (jakarta.* namespace). Include it as compile scope so it gets embedded. |
160 | | - The shaded JAR already contains it, but we also need it on the compile classpath |
161 | | - for our source code that uses jakarta.ws.rs.* directly. |
| 157 | + jakarta.ws.rs-api: needed on the compile classpath (ApiClient.java uses jakarta.ws.rs.*). |
| 158 | + Bamboo 12.x provides jakarta.ws.rs 3.1.0 parent-first via its webapp classloader, |
| 159 | + so this must be 'provided' — embedding it causes AMPS to extract jakarta.ws.rs.* |
| 160 | + classes into the plugin bundle root, creating a classloader split-brain. |
162 | 161 | --> |
163 | 162 | <dependency> |
164 | 163 | <groupId>jakarta.ws.rs</groupId> |
165 | 164 | <artifactId>jakarta.ws.rs-api</artifactId> |
166 | 165 | <version>3.1.0</version> |
| 166 | + <scope>provided</scope> |
167 | 167 | </dependency> |
168 | 168 |
|
169 | 169 | <dependency> |
|
210 | 210 | <groupId>org.glassfish.hk2</groupId> |
211 | 211 | <artifactId>osgi-resource-locator</artifactId> |
212 | 212 | </exclusion> |
| 213 | + <!-- |
| 214 | + net.sf.ehcache:ehcache:2.10.9.4.10 is an Atlassian-patched version that |
| 215 | + does not exist in Maven Central and is not reliably available in |
| 216 | + atlassian-public. Since atlassian-bamboo-web is 'provided', Bamboo |
| 217 | + supplies ehcache at runtime — we do not need to resolve it here. |
| 218 | + --> |
| 219 | + <exclusion> |
| 220 | + <groupId>net.sf.ehcache</groupId> |
| 221 | + <artifactId>ehcache</artifactId> |
| 222 | + </exclusion> |
213 | 223 | </exclusions> |
214 | 224 | </dependency> |
215 | 225 |
|
|
251 | 261 | <groupId>com.fasterxml.jackson.module</groupId> |
252 | 262 | <artifactId>jackson-module-jakarta-xmlbind-annotations</artifactId> |
253 | 263 | <version>${jackson-version}</version> |
| 264 | + <exclusions> |
| 265 | + <!-- |
| 266 | + jakarta.xml.bind-api and jakarta.activation-api are transitive compile-scope |
| 267 | + deps of this module. Bamboo 12.x provides these parent-first, so we must |
| 268 | + exclude them here to prevent AMPS from copying their classes into the bundle root. |
| 269 | + --> |
| 270 | + <exclusion> |
| 271 | + <groupId>jakarta.xml.bind</groupId> |
| 272 | + <artifactId>jakarta.xml.bind-api</artifactId> |
| 273 | + </exclusion> |
| 274 | + <exclusion> |
| 275 | + <groupId>jakarta.activation</groupId> |
| 276 | + <artifactId>jakarta.activation-api</artifactId> |
| 277 | + </exclusion> |
| 278 | + <exclusion> |
| 279 | + <groupId>com.sun.activation</groupId> |
| 280 | + <artifactId>jakarta.activation</artifactId> |
| 281 | + </exclusion> |
| 282 | + <exclusion> |
| 283 | + <groupId>javax.xml.bind</groupId> |
| 284 | + <artifactId>jaxb-api</artifactId> |
| 285 | + </exclusion> |
| 286 | + <exclusion> |
| 287 | + <groupId>com.sun.istack</groupId> |
| 288 | + <artifactId>istack-commons-runtime</artifactId> |
| 289 | + </exclusion> |
| 290 | + <exclusion> |
| 291 | + <groupId>com.sun.xml.fastinfoset</groupId> |
| 292 | + <artifactId>FastInfoset</artifactId> |
| 293 | + </exclusion> |
| 294 | + <exclusion> |
| 295 | + <groupId>org.glassfish.jaxb</groupId> |
| 296 | + <artifactId>jaxb-runtime</artifactId> |
| 297 | + </exclusion> |
| 298 | + </exclusions> |
254 | 299 | </dependency> |
255 | 300 | <dependency> |
256 | 301 | <groupId>jakarta.annotation</groupId> |
257 | 302 | <artifactId>jakarta.annotation-api</artifactId> |
258 | 303 | <version>${jakarta-annotation-version}</version> |
| 304 | + <scope>provided</scope> |
259 | 305 | </dependency> |
260 | 306 |
|
261 | 307 | <!-- Note: Required by Swagger-generated API client impl. for Basic Auth, but basic auth is not used here --> |
|
267 | 313 |
|
268 | 314 | </dependencies> |
269 | 315 |
|
| 316 | + <dependencyManagement> |
| 317 | + <dependencies> |
| 318 | + <!-- |
| 319 | + Override old org.glassfish.jaxb:jaxb-runtime versions that have broken POMs |
| 320 | + referencing defunct http://maven.java.net/ repositories. These old versions |
| 321 | + appear in dependency management of Bamboo's transitive deps and cause Maven |
| 322 | + to fail POM resolution. Overriding with a modern version avoids the issue. |
| 323 | + --> |
| 324 | + <dependency> |
| 325 | + <groupId>org.glassfish.jaxb</groupId> |
| 326 | + <artifactId>jaxb-runtime</artifactId> |
| 327 | + <version>4.0.5</version> |
| 328 | + <scope>provided</scope> |
| 329 | + </dependency> |
| 330 | + <dependency> |
| 331 | + <groupId>javax.xml.bind</groupId> |
| 332 | + <artifactId>jaxb-api</artifactId> |
| 333 | + <version>2.3.1</version> |
| 334 | + <scope>provided</scope> |
| 335 | + </dependency> |
| 336 | + <dependency> |
| 337 | + <groupId>com.sun.istack</groupId> |
| 338 | + <artifactId>istack-commons-runtime</artifactId> |
| 339 | + <version>4.1.2</version> |
| 340 | + <scope>provided</scope> |
| 341 | + </dependency> |
| 342 | + <dependency> |
| 343 | + <groupId>com.sun.xml.fastinfoset</groupId> |
| 344 | + <artifactId>FastInfoset</artifactId> |
| 345 | + <version>2.1.1</version> |
| 346 | + <scope>provided</scope> |
| 347 | + </dependency> |
| 348 | + <!-- |
| 349 | + Force jakarta.* packages that Bamboo 12.x provides parent-first to 'provided' |
| 350 | + scope so AMPS never copies their classes into the plugin bundle root. |
| 351 | + --> |
| 352 | + <dependency> |
| 353 | + <groupId>jakarta.xml.bind</groupId> |
| 354 | + <artifactId>jakarta.xml.bind-api</artifactId> |
| 355 | + <version>3.0.1</version> |
| 356 | + <scope>provided</scope> |
| 357 | + </dependency> |
| 358 | + <dependency> |
| 359 | + <groupId>jakarta.activation</groupId> |
| 360 | + <artifactId>jakarta.activation-api</artifactId> |
| 361 | + <version>2.1.0</version> |
| 362 | + <scope>provided</scope> |
| 363 | + </dependency> |
| 364 | + <dependency> |
| 365 | + <groupId>com.sun.activation</groupId> |
| 366 | + <artifactId>jakarta.activation</artifactId> |
| 367 | + <version>2.0.1</version> |
| 368 | + <scope>provided</scope> |
| 369 | + </dependency> |
| 370 | + <dependency> |
| 371 | + <groupId>jakarta.inject</groupId> |
| 372 | + <artifactId>jakarta.inject-api</artifactId> |
| 373 | + <version>2.0.1</version> |
| 374 | + <scope>provided</scope> |
| 375 | + </dependency> |
| 376 | + </dependencies> |
| 377 | + </dependencyManagement> |
| 378 | + |
270 | 379 | <build> |
271 | 380 | <plugins> |
272 | 381 | <plugin> |
|
298 | 407 | !jdk.internal*, |
299 | 408 | !sun.misc*, |
300 | 409 | !javassist*, |
301 | | - !jakarta.inject*, |
302 | | - !jakarta.annotation*, |
303 | 410 | !org.aopalliance*, |
304 | | - !jakarta.validation*, |
305 | 411 | !com.opensymphony*, |
| 412 | + jakarta.*;resolution:=optional, |
306 | 413 | *;resolution:=optional |
307 | 414 | </Import-Package> |
308 | 415 | <DynamicImport-Package></DynamicImport-Package> |
309 | 416 | <Embed-Dependency> |
310 | 417 | jersey-shaded, |
311 | | - jakarta.ws.rs-api, |
312 | | - jakarta.annotation-api, |
313 | 418 | jackson-core, |
314 | 419 | jackson-annotations, |
315 | 420 | jackson-databind, |
|
0 commit comments