在 Maven Repos 中托管 IBM MQ 的约定是什么?
What Is The Convention For Hosting IBM MQ In Maven Repos?
我们在我们的应用程序中使用 IBM MQ 8.0.0.4,因此我们计划在我们的 Maven 存储库管理器(在本例中为 Nexus OSS 2)中托管这些 jar。
IBM MQ 的 GAV 具体约定是什么?
所需的 jar 是:
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
直到 mq.jar
都是 IBM jar。
我应该使用 com.ibm
组 ID 吗?
或 com.ibm.mq
组 ID?
或混合 - 例如 dhbcore.jar 的清单说 com.ibm.disthub2
版本号的约定是什么?我应该对所有 ibm jar 使用 8.0.0.4
还是应该从清单中获取版本?
清单中的版本大多数是 8.0.0.4
,但 commonervices.jar
和 mqjms.jar
说 p800-004-151017
。这对我来说仍然看起来像 8.0.0.4
但看起来像一些非 Maven 快照约定。
这种情况下的约定是什么? (我不是在寻找一般的 maven 约定,而是它们如何专门应用于此用例)。
更新:
As of v9.0.4.0 IBM 已将 MQ Java 客户端接口的副本推送到 com.ibm.mq GroupId 下的中央存储库。例如
<dependency>
<groupId>com.ibm.mq</groupId>
<artifactId>com.ibm.mq.allclient</artifactId>
<version>9.0.4.0</version>
</dependency>
原版:
在 IBM MQ v8.0.0.3 及更高版本中,您可以下载 Java 只有客户端,其中包含较少数量的 jar 文件。这被打包为一个自解压的 jar 文件。可以使用 link 在 Fix Central 下载最新的 v8 包:IBM MQ JMS and Java 'All Client'
大多数以前分开的 jar 现在都包含在 com.ibm.mq.allclient.jar
中。
对于 IBM MQ 类 对于 Java 您可以在知识中心页面“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
对于 IBM MQ 类 对于 JMS 您可以在知识中心页面“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
对于版本号,我建议您使用它们来自的包的版本号,在您的示例中为 8.0.0.4。
我们在我们的应用程序中使用 IBM MQ 8.0.0.4,因此我们计划在我们的 Maven 存储库管理器(在本例中为 Nexus OSS 2)中托管这些 jar。
IBM MQ 的 GAV 具体约定是什么?
所需的 jar 是:
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
直到 mq.jar
都是 IBM jar。
我应该使用 com.ibm
组 ID 吗?
或 com.ibm.mq
组 ID?
或混合 - 例如 dhbcore.jar 的清单说 com.ibm.disthub2
版本号的约定是什么?我应该对所有 ibm jar 使用 8.0.0.4
还是应该从清单中获取版本?
清单中的版本大多数是 8.0.0.4
,但 commonervices.jar
和 mqjms.jar
说 p800-004-151017
。这对我来说仍然看起来像 8.0.0.4
但看起来像一些非 Maven 快照约定。
这种情况下的约定是什么? (我不是在寻找一般的 maven 约定,而是它们如何专门应用于此用例)。
更新:
As of v9.0.4.0 IBM 已将 MQ Java 客户端接口的副本推送到 com.ibm.mq GroupId 下的中央存储库。例如
<dependency>
<groupId>com.ibm.mq</groupId>
<artifactId>com.ibm.mq.allclient</artifactId>
<version>9.0.4.0</version>
</dependency>
原版:
在 IBM MQ v8.0.0.3 及更高版本中,您可以下载 Java 只有客户端,其中包含较少数量的 jar 文件。这被打包为一个自解压的 jar 文件。可以使用 link 在 Fix Central 下载最新的 v8 包:IBM MQ JMS and Java 'All Client'
大多数以前分开的 jar 现在都包含在 com.ibm.mq.allclient.jar
中。
对于 IBM MQ 类 对于 Java 您可以在知识中心页面“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
对于 IBM MQ 类 对于 JMS 您可以在知识中心页面“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
对于版本号,我建议您使用它们来自的包的版本号,在您的示例中为 8.0.0.4。