Thursday, 15 September 2011

Java Runtime exec not executing batch script -


इस सवाल का पहले से ही एक उत्तर है: < / P>

  • 9 जवाब

मेरे पास एक बैच फ़ाइल है पर C: \ app \ stuff \ dostuff.bat जो कि आपके द्वारा प्रदान किए गए तर्कों के आधार पर फ़ाइल सिस्टम को सामान देता है। जब मैं एक कमांड लाइन खोलता हूं, और इसे चलाने के समान करता हूं, यह पूरी तरह ठीक काम करता है:

  सी: \ एप \ सामान \ dostuff.bat zombies  

जैसे मैंने कहा, यह अभिवादन पूरी तरह से काम करता है (और zombies arg ठीक तरीके से संभालता है) हालांकि, अब मैं एक जावा ऐप के अंदर से जैसे dostuff.bat के निष्पादन को चलाने की कोशिश कर रहा हूं:

  प्रयास करें {प्रक्रिया प्रक्रिया = रनटाइम.गेटरीटाइम ()। Exec ("सी: \\ एप \\ सामग्री \\ dostuff.bat लाश"); process.waitFor (); } पकड़ (IOException | रुकावट अपवाद ई) {logger.error (ExceptionUtils.getFullStackTrace (e)); }  

जब मैं इसे चलाता हूं, मुझे कोई अपवाद नहीं मिलता है, लेकिन यह स्पष्ट रूप से बैच स्क्रिप्ट को ठीक से निष्पादित नहीं कर रहा है (मैं यह बता सकता हूं क्योंकि बाकी फाइल सिस्टम जो बैच स्क्रिप्ट को छूता है जैसे इसे संशोधित नहीं किया जाना चाहिए)। क्या मैं इसे गलत ढंग से लागू कर रहा हूं? क्या मुझे फकरिंग प्रक्रियाओं के साथ कुछ करने की आवश्यकता है? मैं कैसे डिबग कर सकता हूं?

इसे इस प्रकार देखें:

  प्रक्रिया प्रक्रिया = रनटाइम.गेटरेन्टाइम ()। Exec ("सीएमडी / सी प्रारंभ सी: \\ एप \\ सामग्री \\ dostuff.bat लाश");  

No comments:

Post a Comment