0

所以我有一个可执行的 jar 文件。我需要弄清楚它在构建时使用了哪个 Solace 版本。

我可以反编译并获取类文件,但这并不能帮助我找出那个 jar 中的 Solace 版本。

我还从 JAR 中提取了 Manifets 文件。内容是

Manifest-Version: 1.0
Created-By: 1.5.0_07 (Sun Microsystems Inc.)

所以我知道 JAVA 版本,但不知道 Solace 版本。

有什么想法或建议吗?

谢谢

4

1 回答 1

4

通常 Solace API 版本包含在 Solace jar 的名称中。例如:sol-jcsmp-7.0.0.63.jar。

在 Solace jar 内部,META-INF 目录中也有一个清单文件,其中包含版本信息。例如:

Manifest-Version: 1.0
Ant-Version: Apache Ant 1.8.2
Created-By: 1.7.0_17-b02 (Oracle Corporation)

Name: com/solacesystems/jcsmp
Specification-Title: Solace Systems Messaging API for Java
Specification-Version: 7.0.0.63
Specification-Vendor: Solace Systems, Inc.
Implementation-Title: com.solacesystems.jcsmp
Implementation-Version: 7.0.0.63
Implementation-Vendor: Solace Systems, Inc.

此外,应用程序还可以通过编程方式获取 Solace API 版本,如下所示:

JCSMPRuntime.onlyInstance().getVersion().getSwVersion()

因此,这在某种程度上取决于您的应用程序是如何打包的,其中哪种方法最合适。

于 2015-07-22T15:21:19.257 回答