|
191 | 191 | <configuration> |
192 | 192 | <manifestLocation>${project.build.outputDirectory}/META-INF</manifestLocation> |
193 | 193 | <instructions> |
194 | | - <!-- Don't include JNR packages since some JNR modules are not OSGi bundles --> |
195 | | - <Import-Package>!jnr.*,*</Import-Package> |
196 | | - <Export-Package>com.datastax.oss.driver.*.core.*</Export-Package> |
| 194 | + <!-- Don't include JNR packages since some JNR modules are not OSGi bundles, jctools because its shaded. |
| 195 | + Import sun.misc as jctools does this. --> |
| 196 | + <Import-Package>!jnr.*,!org.jctools.*,sun.misc;resolution:=optional,*</Import-Package> |
| 197 | + <!-- Explicitly declare shaded jctools packages since this isn't covered by shade plugin --> |
| 198 | + <Export-Package> |
| 199 | + com.datastax.oss.driver.*.core.*, |
| 200 | + com.datastax.oss.driver.shaded.jctools.util;version="${project.version}";uses:="sun.misc", |
| 201 | + com.datastax.oss.driver.shaded.jctools.queues;version="${project.version}";uses:="com.datastax.oss.driver.shaded.jctools.queues.spec", |
| 202 | + com.datastax.oss.driver.shaded.jctools.queues.spec;version="${project.version}", |
| 203 | + com.datastax.oss.driver.shaded.jctools.queues.atomic;version="${project.version}";uses:="com.datastax.oss.driver.shaded.jctools.queues,com.datastax.oss.driver.shaded.jctools.queues.spec", |
| 204 | + com.datastax.oss.driver.shaded.jctools.maps;version="${project.version}" |
| 205 | + </Export-Package> |
197 | 206 | </instructions> |
198 | 207 | </configuration> |
199 | 208 | </execution> |
|
209 | 218 | <instructions> |
210 | 219 | <Bundle-Name>DataStax Java driver for Apache Cassandra(R) - core netty shaded</Bundle-Name> |
211 | 220 | <!-- Don't include netty since it will be shaded, import javax.security.cert as needed by netty ssl --> |
212 | | - <Import-Package>!jnr.*,!io.netty.*,javax.security.cert,*</Import-Package> |
213 | | - <Export-Package>com.datastax.oss.driver.*.core.*</Export-Package> |
| 221 | + <Import-Package>!jnr.*,!org.jctools.*,sun.misc;resolution:=optional,!io.netty.*,javax.security.cert,* |
| 222 | + </Import-Package> |
| 223 | + <Export-Package> |
| 224 | + com.datastax.oss.driver.*.core.*, |
| 225 | + com.datastax.oss.driver.shaded.jctools.util;version="${project.version}";uses:="sun.misc", |
| 226 | + com.datastax.oss.driver.shaded.jctools.queues;version="${project.version}";uses:="com.datastax.oss.driver.shaded.jctools.queues.spec", |
| 227 | + com.datastax.oss.driver.shaded.jctools.queues.spec;version="${project.version}", |
| 228 | + com.datastax.oss.driver.shaded.jctools.queues.atomic;version="${project.version}";uses:="com.datastax.oss.driver.shaded.jctools.queues,com.datastax.oss.driver.shaded.jctools.queues.spec", |
| 229 | + com.datastax.oss.driver.shaded.jctools.maps;version="${project.version}" |
| 230 | + </Export-Package> |
214 | 231 | </instructions> |
215 | 232 | </configuration> |
216 | 233 | </execution> |
217 | 234 | </executions> |
218 | 235 | </plugin> |
| 236 | + <!-- shade jctools --> |
| 237 | + <plugin> |
| 238 | + <artifactId>maven-shade-plugin</artifactId> |
| 239 | + <executions> |
| 240 | + <execution> |
| 241 | + <phase>package</phase> |
| 242 | + <goals> |
| 243 | + <goal>shade</goal> |
| 244 | + </goals> |
| 245 | + <configuration> |
| 246 | + <artifactSet> |
| 247 | + <includes> |
| 248 | + <include>org.jctools:jctools-core</include> |
| 249 | + </includes> |
| 250 | + </artifactSet> |
| 251 | + <relocations> |
| 252 | + <relocation> |
| 253 | + <pattern>org.jctools</pattern> |
| 254 | + <shadedPattern>com.datastax.oss.driver.shaded.jctools</shadedPattern> |
| 255 | + </relocation> |
| 256 | + </relocations> |
| 257 | + <transformers> |
| 258 | + <transformer implementation="org.apache.maven.plugins.shade.resource.DontIncludeResourceTransformer"> |
| 259 | + <resources> |
| 260 | + <resource>META-INF/maven/org.jctools/jctools-core/pom.properties</resource> |
| 261 | + <resource>META-INF/maven/org.jctools/jctools-core/pom.xml</resource> |
| 262 | + </resources> |
| 263 | + </transformer> |
| 264 | + </transformers> |
| 265 | + <promoteTransitiveDependencies>true</promoteTransitiveDependencies> |
| 266 | + </configuration> |
| 267 | + </execution> |
| 268 | + </executions> |
| 269 | + </plugin> |
219 | 270 | </plugins> |
220 | 271 | </build> |
221 | 272 | </project> |
0 commit comments