jsf-webappを開発していますが、使用しているJSFバージョンを知る必要がありますか?これはどこで調べられますか?前もって感謝します。
3 に答える
プログラム的に、あなたは意味しますか?から入手できますPackage#getImplementationVersion()
。
String version = FacesContext.class.getPackage().getImplementationVersion();
ちなみに方法もgetImplementationVendor()
ありgetImplementationTitle()
ます。ベンダー(MyFacesやMojarraなど)を区別するためにも使用することをお勧めします。
それとも手動ですか?/META-INF/MANIFEST.MF
JSFimplJARファイルのファイルを調べてください。ZIPツールを使用してJARファイルを抽出できます。Implementation-Version
マニフェストファイルのエントリです。
私にとっては、WebSphere Serverで動作していなかったので、peaterのコメントに従いました。
System.out.println("JSF API Location: " + FacesContext.class.getProtectionDomain().getCodeSource());
System.out.println("JSF Impl Location: " + Facelet.class.getProtectionDomain().getCodeSource());
ライブラリのファイル名のバージョンが表示されました。
JSF APIの場所:(file:/ C:/workspaces/spielwiese/wlp/dev/api/spec/com.ibm.websphere.javaee。jsf.2.2_1.0.18 .jar)
JSF Implの場所:(file:/ C:/workspaces/spielwiese/wlp/dev/api/spec/com.ibm.websphere.javaee。jsf.2.2_1.0.18 .jar)
手順
1:javax.faces.jarを解凍し(フォルダーに抽出)、folder\META-INFを抽出します
2:META-INF側で、MANIFEST.MFを開きます。
3:実装バージョンを検索
例:実装-バージョン:2.1.6-SNAPSHOT