2009-08-27 15 views
47

मैंने हाल ही में स्कैला में कार्यक्रम शुरू किया। मैं एक मुफ्त स्कैला प्रोफाइलर की तलाश में हूं। भाषा की आधिकारिक साइट से पढ़ना मुझे YourKit पर ले गया, लेकिन कार्यक्रम एक मुफ़्त नहीं था।स्कैला प्रोफाइलर?

गुगलिंग "स्कैला प्रोफाइलर" ने मुझे कोई प्रासंगिक परिणाम नहीं दिया।

तो मैं स्कैला में अपना प्रोग्राम कैसे लिखूं? मैं Netbeans या ग्रहण के लिए एक ग्राफिकल प्लगइन पसंद करते हैं। लेकिन अगर ऐसी कोई बात नहीं है, तो एक कंसोल एक ठीक होगा।

धन्यवाद :)

उत्तर

46

यह देखते हुए कि स्काला जावा आभासी मशीन (JVM) पर चलता है, तो आप आवेदन प्रोफ़ाइल JVM उपकरणों JConsole और VisualVM उपयोग कर सकते हैं। वैकल्पिक रूप से किसी भी जावा प्रोफाइलर रहे (उदा YourKit के रूप में आप पहले से ही उल्लेख किया है) काम करना चाहिए

VisualVM1.6.0_10 के बाद से JDK के साथ बंडल किया गया है और यह NetBeans प्रोफाइलर पर आधारित है। आप स्मृति के उपयोग पर कब्जा कर सकते हैं, कोड प्रदर्शन हॉटस्पॉट आदि:

C:> %JAVA_HOME%\bin\jvisualvm 
+0

बहुत धन्यवाद। मैं इसे देखूंगा – Phil

+0

धन्यवाद। मैंने JVisualVM डाउनलोड किया और फिर https://visualvm.dev.java.net/gettingstarted.html पर मार्गदर्शिका का पालन किया, और यह काम करता है। – Phil

+0

एक और समस्या: कार्यक्रम केवल प्रदर्शित किया गया है हॉटस्पॉट कहां है। मैं इसे "पदानुक्रमित" मोड में कैसे प्रदर्शित करूं? यानी कौन सा फ़ंक्शन कॉल करता है। क्या JVisualVM ऐसा कर सकता है? धन्यवाद :) – Phil

9

मैं jvisualvm साथ की कोशिश की है (अंदर और बाहर दोनों NetBeans) लेकिन मैं रूपरेखा रिपोर्ट (केवल अंतर्निहित जावा पुस्तकालयों विधि कॉल में किसी भी स्केला विधि कॉल नहीं देख सकते हैं)। मेरे लिए यह एक बग की तरह दिखता है लेकिन शायद मुझे कुछ स्पष्ट याद आती है। वैसे भी यहां एक मुद्दा रिपोर्ट है जिसे मैंने netbeans.org पर विवरण के साथ लिखा है: 171388

अगर किसी ने यहां सफलतापूर्वक JVisualVM का उपयोग CPU-प्रोफ़ाइल स्कैला कोड में किया है तो कृपया मुझे बताएं।

+0

मुझे एक ही समस्या है। मुझे कोई स्कैला विधियां नहीं दिखाई देती हैं। –

+11

मुझे एक ही समस्या है, लेकिन इसे प्रोफाइलर पृष्ठ पर "सेटिंग्स" चेकबॉक्स पर क्लिक करके आसानी से सुलझाया जा सकता है और लक्ष्य को कॉन्फ़िगर किया जा सकता है और कक्षाओं को सही तरीके से अनदेखा कर सकता है। मेरे मामले में एक जावा। * नियम को अनदेखा स्केल कोड की अवरुद्ध प्रोफ़ाइल को अनदेखा करें – Basilevs

संबंधित मुद्दे