问题
We are using IBM MQ 8.0.0.4 in our application and so we are planning on hosting the jars in our maven repository manager (Nexus OSS 2 in this case).
What is the convention for the GAV for IBM MQ specifically?
The jars that are required are:
commonservices.jar
dhbcore.jar
headers.jar
jmqi.jar
mqjms.jar
pcf.jar
mq.jar
Nojndi.jar
jndi.jar
fscontext.jar
providerutil.jar
jms.jar
connector.jar
All of them up to mq.jar
are IBM jars.
Should I use the com.ibm
group id?
Or the com.ibm.mq
group id?
Or a mix - for instance the manifest for dhbcore.jar says com.ibm.disthub2
What is the convention for the version number? Should I use 8.0.0.4
for all the ibm jars or should I take the version from the manifest?
The version in the manifest is 8.0.0.4
in most of them but commonervices.jar
and mqjms.jar
say p800-004-151017
. This still looks like 8.0.0.4
to me but looks like some non-maven snapshot convention.
What are the conventions in this case? (I'm not looking for the general maven conventions but how they apply specifically to this use case).
回答1:
UPDATE:
As of v9.0.4.0 IBM have pushed copies of the MQ Java client interfaces to the Central Repository under the com.ibm.mq GroupId. e.g.
<dependency>
<groupId>com.ibm.mq</groupId>
<artifactId>com.ibm.mq.allclient</artifactId>
<version>9.0.4.0</version>
</dependency>
ORIGINAL:
At IBM MQ v8.0.0.3 and higher you can download a Java only client which includes a fewer number of jar files. This is packaged as a self extracting jar file. The latest v8 package can be downloaded on Fix Central using this link: IBM MQ JMS and Java 'All Client'
Most of the previously separate jars are now included in the com.ibm.mq.allclient.jar
.
For IBM MQ Classes for Java you can find the list of files required on the Knowledge Center page "What is installed for IBM MQ classes for Java":
Relocatable JAR files
Within an enterprise, the following files can be moved to systems that need to run IBM MQ classes for Java applications:
- com.ibm.mq.allclient.jar
- com.ibm.mq.traceControl.jar
For IBM MQ Classes for JMS you can find the list of files required on the Knowledge Center page "What is installed for IBM MQ classes for JMS":
Relocatable JAR files
Within an enterprise, the following files can be moved to systems that need to run IBM MQ classes for JMS:
- com.ibm.mq.allclient.jar
- com.ibm.mq.traceControl.jar
- jms.jar
- fscontext.jar
- providerutil.jar
For version numbers I suggest you use the version number of the package they came from, in your example 8.0.0.4.
来源:https://stackoverflow.com/questions/45266094/what-is-the-convention-for-hosting-ibm-mq-in-maven-repos