Platform: amd64, debian 10.4 "buster", java 11, karaf 4.2.9 I'm trying to load liquibase 3.10.1 from a feature, and liquibase-core tries to find javax.activation.DataSource and fails with a ClassNotFoundException[1].
The feature I'm trying to load, is liquibase-sample from [2] which in turn loads feature liquibase-sample-hook from the same feature repository. And in turn liquibase-sample-hook tries to load liquibase-core from [3]. Feature liquibase-core from [3] is the one I'm trying to create a new version of: I'm trying to upgrade my liquibase karaf feature[4] from liquibase 3.8.0 to 3.10.1. As far as I can tell the liquibase-core 3.10.1 manifest[5] does not import javax.activation directly? Is this the problem? There is nothing in the liquibase 3.10.1 java source that references javax.activation.DataSource, so I'm guessing the class has to come from some transitive reference? Does anyone know what to do to fix this? Rebundling of liquibase-core? Is there another way that doesn't involve changing liquibase-core itself? Perhaps the same "party trick" I'm using to redirect the liquibase logging to the karaf log (instead of printing to the console)? I.e attaching a fragment to liquibase-core to get it "inside" the bundle. What happens if I put a version of javax.activation inside a fragment and attch it to liquibase-core? Will it conflict with the version of liquibase-core exposed by the servicemix version of javax.activation used by karaf? Thanks! References: [1] <https://gist.github.com/steinarb/52290fca04c772f0fa76b8927125b9df> [2] <https://gist.github.com/steinarb/8e39910a0ef16068016c4dde4ff3cc95> [3] <https://gist.github.com/steinarb/a0780f69cddf3fbe2df7dcd93cbce4a1> [4] <https://github.com/steinarb/liquibase-karaf-feature#a-karaf-feature-for-liquibase-core> [5] <https://gist.github.com/steinarb/76bd466ba6a85885234287fe26c1b70a>
