जावा को 1.6 से 1.7 x64 (विंडोज 7 पर) को अपग्रेड करने के बाद, अचानक मैं पाइथन 2.7 के subprocess
मॉड्यूल के माध्यम से java.exe लॉन्च नहीं कर सकता। बस के लिए इस्तेमाल किया निम्न स्क्रिप्ट काम:पाइथन subprocess के माध्यम से java.exe निष्पादित क्यों नहीं कर सकता?
Traceback (most recent call last):
File ".\tst.py", line 2, in <module>
subprocess.check_call([r"C:\Windows\system32\java.exe"])
File "C:\Python27\lib\subprocess.py", line 506, in check_call
retcode = call(*popenargs, **kwargs)
File "C:\Python27\lib\subprocess.py", line 493, in call
return Popen(*popenargs, **kwargs).wait()
File "C:\Python27\lib\subprocess.py", line 679, in __init__
errread, errwrite)
File "C:\Python27\lib\subprocess.py", line 896, in _execute_child
startupinfo)
WindowsError: [Error 2] The system cannot find the file specified
मैं भी पुष्टि की है कि C:\Windows\system32\java.exe
वास्तव में मौजूद है, एक आवेदन पत्र है, और आदेश शेल से क्रियान्वित किया जा सकता:
import subprocess
subprocess.check_call([r"C:\Windows\system32\java.exe"])
अब यह इस तरह विफल रहता है ।
क्या गलत है?
संपादित करें: मैंने पाया कि मैं अजगर से C:\Program Files\Java\jre7\bin\java.exe
शुरू कर सकते हैं, तो C:\Windows\system32\java.exe
कुछ अजीब छद्म शॉर्टकट हालांकि तकनीकी रूप से एक विंडोज़ अनुप्रयोग होना चाहिए। संस्करण 1.7 ने इसे किसी भी तरह से गड़बड़ कर दिया होगा, क्योंकि मैंने अभी पुष्टि की है कि संस्करण 1.6 ठीक है।
क्या आप वाकई एक लिंक नहीं हैं? – Marcin
@Marcin फ़ाइल गुणों के अनुसार फ़ाइल प्रकार 'एप्लिकेशन (.exe) 'है। – aknuds1
यह ... अजीब है। – Marcin