onobc commented on issue #19856:
URL: https://github.com/apache/pulsar/issues/19856#issuecomment-1497494457

   Hi @tisonkun ,
   
   If the libs are all shaded it should not matter what version is used by the 
admin client - they are effectively invisible.
   IIRC, the only remaining unshaded lib in `2.11.0+` is 
`javax.xml.bind:jaxb-api:2.3.1`. 
   
   In general, shading the libs that the admin client is using to do its job is 
the only safe (and most flexible) answer IMO. Otherwise, if the admin client 
exposes a popular lib(s) then we will immediately be in this 
JEE/SpringBoot/Java version matrix madness where we would have tradeoffs such 
as "If you want to use Pulsar 3.x then you have to use Spring Boot 3.x" etc.. 
   
   I do think a helpful requirement (exit criteria) for this ticket would be to 
make sure that whatever solution we land on, that Spring Boot 2.x users can use 
both Pulsar client 2.x and 3.x. An example could be as follows:
   
   * SB 2.7.x simple app using Jersey (could [bootstrap 
here](https://start.spring.io/#!type=maven-project&language=java&platformVersion=2.7.10&packaging=jar&jvmVersion=1.8&groupId=com.example&artifactId=demo&name=demo&description=Demo%20project%20for%20Spring%20Boot&packageName=com.example.demo&dependencies=jersey)).
   * In a user defined Jersey component (controller or endpoint) use admin 
client to query topics/namespaces and create topics etc.. Do this w/ both admin 
client 2.x and 3.x. 
   * In a user defined non-Jersey component (ApplicationRunner, Service, Bean, 
anything else that is not Jersey specific) use admin client to query 
topics/namespaces and create topics etc.. Do this w/ both admin client 2.x and 
3.x. 
   
   Thanks for pinging me and bringing this up. 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to