Bir Clojure programı kendi MANIFEST.MF dosyasını nasıl bulabilir (bir JAR dosyasında paketlendiği varsayılarak). Clojure programı kendi MANIFEST.MF okunurken
benim "-Ana" işlevinden bu yapmaya çalışıyorum, ancak bir sınıf aşağıdaki kodda kullanmak bulamıyorum:(.getValue
(..
(java.util.jar.Manifest.
(.openStream
(java.net.URL.
(str
"jar:"
(..
(class **WHAT-GOES-HERE**)
getProtectionDomain
getCodeSource
getLocation)
"!/META-INF/MANIFEST.MF"))))
getMainAttributes)
"Build-number"))
teşekkür ederiz.
Teşekkürler, bu yardımcı oldu. Biraz refactoring yaptım çünkü bu konuda takıntılıyım. (defn olsun fonksiyonlu-location [sym] (.. (sınıf sym) getProtectionDomain getCodeSource GetLocation)) (defn [] get-tezahür-niteliklerini (: İşte ben ile sona ne [location (get-function-location get-manifest-attributes)] (ne zaman değil (nil? yeri) (-> (str "jar:" location "! /META-INF/MANIFEST.MF") (URL.) (.openStream) (Manifest.) (.getMainAttributes))))) –
Düzeltme: simgenin işleve aktarılması değil doğru çalışıyor. Yer alma ve sınıfta get-location geçme için get-function-location yeniden adlandırma yaparak sona erdi. –