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

我可以反编译并获取类文件,但这并不能帮助我弄清楚该jar中的Solace版本。

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

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


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

有什么想法或建议吗?

谢谢

最佳答案

通常,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()


因此,这将取决于您的应用程序的打包方式,哪种方法最合适。

08-18 13:05