मैं स्काला के भीतर से स्कैला संस्करण कैसे प्राप्त करूं?


91

यह कमांड-लाइन कंपाइलर विकल्पों के बारे में नहीं है। मैं प्रोग्राम को कोड के अंदर स्कैला संस्करण कैसे प्राप्त करूं?

वैकल्पिक रूप से, ग्रहण स्कैला प्लगइन v2 कहाँ तक पथ को संग्रहीत करता है scalac?


1
ग्रहण के लिए स्केल आईडीई पथ को संग्रहीत नहीं करता है scalac; यह ग्रहण JVM के साथ सीधे भीतर से संकलक कक्षाओं को आमंत्रित करता है।
जीन-फिलिप पेलेट

2
@ जीन-फिलिप पेलेट थैंक्स, btw, मैंने पाया है कि scala.sys.propsसंदर्भ क्या लगता है जैसे कुछ sun.boot.class.path -> F:\eclipse\configuration\org.eclipse.osgi\bundles\316\1\.cp\lib\scala-library.jar;( jar' library.proertiesयुक्त ' के साथ ) के तहत लाला लाइब्रेरी है version.number=2.9.0.final। लेकिन जब scala.sys.propsसे वहाँ है क्योंकि 2.9.0केवल यह बहुत ज्यादा एक संकेत ही है :)
mlvljr 25'11

धिक्कार है, किसी ने, कृपया इसे विकी बनाएं! :)
mlvjjr

..चेक, यह इस साल 100 अपवॉट करने जा रहा है, शायद, चलो धकेलते रहें, लोग (जो स्काला को जानते हैं कि यह इतना जटिल है कि यहां तक ​​कि चीजें भी आसान हो सकती हैं)।
एमएलवल्जर

जवाबों:


123

यह बिना पहुंच के काम करेगा scala-compiler.jar:

Welcome to Scala version 2.9.1.final (Java HotSpot(TM) 64-Bit Server VM, Java 1.6.0_26).
Type in expressions to have them evaluated.
Type :help for more information.

scala> util.Properties.versionString
res0: java.lang.String = version 2.9.1.final

3
मुझे स्कैला जोड़ना पड़ा क्योंकि स्पार्क लाइब्रेरियों को पहले लोड किया गया था। तोscala.util.Properties.versionString
फ्रांसिस्को लोपेज-

47

स्केल संस्करण प्राप्त करने के तीन तरीके हैं -

scala> util.Properties.versionNumberString
res103: String = 2.11.4

scala> util.Properties.versionString
res104: String = version 2.11.4

scala> util.Properties.versionMsg
res105: String = Scala library version 2.11.4 -- Copyright 2002-2013, LAMP/EPFL

2
इस पृष्ठ पर सभी में पहला सबसे अच्छा है, प्रतीत होता है :)
mlvljr

1
FYI util.Properties.versionNumberStringकेवल scala 2.10.x के बाद से मौजूद है 2.10.x के नीचे स्केला के लिए, आप util.Properties.releaseVersion.getOrElse("unknown version")संस्करण संख्या स्ट्रिंग प्राप्त करने के लिए उपयोग कर सकते हैं ।
२०

15

आप इस तरह से स्केल संस्करण प्राप्त कर सकते हैं:

scala> scala.tools.nsc.Properties.versionString
res7: java.lang.String = version 2.9.0.final

मैं प्लगइन की बारीकियों को नहीं जानता, हालांकि।


मुझे लगता है कि आप scala.tools.nsc.Properties.versionStringकहीं भी उपयोग कर सकते हैं ।
हेयरफोट्र

पर import scala.tools.nsc.Properties;मेरा कहते हैं, "वस्तु उपकरण पैकेज का सदस्य नहीं है *** स्केला।" :(
mlvljr

7
scala.tools...अगर, ही उपलब्ध है scala-compiler.jarclasspath में है।
michael.kebe

9

हम स्थापित स्काला संस्करण भी प्राप्त कर सकते हैं

  1. ओपन कमांड प्रॉम्प्ट
  2. प्रकार स्काला
  3. आपको निम्न आउटपुट मिलेगा:

स्केला संस्करण 2.10.3 (जावा हॉटस्पॉट (टीएम) 64-बिट सर्वर वीएम, जावा 1.8.0_6 0) में आपका स्वागत है। उनका मूल्यांकन करने के लिए अभिव्यक्तियों में टाइप करें। प्रकार: अधिक जानकारी के लिए मदद।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.