|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
Spring boot JMS applications and MQ Client libraries |
« View previous topic :: View next topic » |
Author |
Message
|
jamesb |
Posted: Wed Oct 18, 2023 4:19 am Post subject: Spring boot JMS applications and MQ Client libraries |
|
|
Novice
Joined: 09 Mar 2008 Posts: 17
|
Hi all,
We recently had an issue where we found developers were using a very old version of the MQ client (circa 5.3) which broke when we upgraded to the latest fixpack 9.3.0.10 on the server. When I started to look into the repository (Artifactory/Jfrog in this case) I found there were various copies of MQ client libraries all over the place some of which are uploaded by app teams and some more centrally.
I know the preference would be to use a locally installed client, but Java developers don't tend to work in this way and package into a .war file to be deployed, for example.
However, I'm not particularly clear on Spring Boot applications which is where my questions is. If someone is building a Spring boot application, does this come packaged with a version of MQ client or do they still need to upload the MQ client, com.ibm.mq.allclient.jar in order to build it?
When I looked at a few tutorials it didn't seem to mention pulling in extra MQ client libraries as though they were packed with Spring Boot. Can anyone confirm please?
Thanks, James. |
|
Back to top |
|
 |
markt |
Posted: Wed Oct 18, 2023 5:16 am Post subject: |
|
|
 Knight
Joined: 14 May 2002 Posts: 508
|
If you're referencing the mq-jms-spring-boot-starter jar file in a Spring Boot application, that automatically pulls in an appropriate level of the MQ client jar.
See for example https://search.maven.org/artifact/com.ibm.mq/mq-jms-spring-boot-starter/3.1.2/jar and look for the com.ibm.mq.jakarta.client dependency.
Provided you have access to the public maven central repo in your build environment, you don't need to put anything else in a local repo. |
|
Back to top |
|
 |
jamesb |
Posted: Wed Oct 18, 2023 7:58 am Post subject: |
|
|
Novice
Joined: 09 Mar 2008 Posts: 17
|
Hi Mark,
Thanks for taking the time to reply. I'm trying to increase my understanding of our own build system in our enterprise environment. When you say that an appropriate level of MQ client jar is pulled in, where would it be pulled from? The latest one available from the IBM site or does IBM upload their latest one to Maven? It seems that we have a bunch of old libraries and my suspicion is that people have got various versions of Spring Boot over time in our own private build system and then they rebuild using the old MQ client lib that was uploaded ages ago.
Thanks, James. |
|
Back to top |
|
 |
markt |
Posted: Wed Oct 18, 2023 8:56 am Post subject: |
|
|
 Knight
Joined: 14 May 2002 Posts: 508
|
The MQ client jars are available from Maven Central. So by default that's where they will be pulled from. The same place as the boot starter itself.
But just about everything is overridable - eg to pull from local repos in preference to Maven Central - so you do need to understand your build systems and where they pull from (eg pom.xml, build.gradle or other tooling). It's not uncommon for people to shadow parts of Maven Central into their own enterprise artifactory. |
|
Back to top |
|
 |
jamesb |
Posted: Fri Oct 20, 2023 2:42 am Post subject: |
|
|
Novice
Joined: 09 Mar 2008 Posts: 17
|
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|
|
|