2014-09-04 95 views
0

所以我有一個可執行的jar文件。我需要弄清楚它在製作時使用了哪個Solace版本。從JAR文件中找出Solace版本

我可以反編譯並獲取類文件,但是這並不能幫助我找出該jar中的Solace版本。

我也從JAR中提取Manifets文件。內容是

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

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

任何想法或建議?

謝謝

回答

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. 

此外,還可以對應用程序來獲得安慰API版本程序如下:

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

所以會有點依賴於你的應用程序是如何包裝它的這些方法將是最合適的。