Ich versuche, einen Subprozess in Python auszuführen, hier ein Teil meines Codes:
def update(self):
currentTime = strftime("%d.%m.%y %H:%M", gmtime()) #strftime("%d-%m-%y %H:%M", gmtime)
resultString = "======== " + currentTime + " ========\n\n"
bzrMergeCommand = "cd %s ; /usr/local/bin/bzr merge" % self._directoryName
print "Getting the updated code from bzr..."
mergeResult = sp.Popen(bzrMergeCommand, shell=True, stdout=sp.PIPE, stderr=sp.PIPE, cwd= self._directoryName)
communicated = mergeResult.communicate()
Aber er läuft nicht, und das ist die Ausnahme, die ich bekommen habe:
'import site' failed; use -v for traceback Traceback (most recent call
last): File "/usr/local/bin/bzr", line 21, in <module>
import os File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py",
line 398, in <module>
import UserDict File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/UserDict.py",
line 84, in <module>
_abcoll.MutableMapping.register(IterableUserDict) File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/abc.py",
line 109, in register
if issubclass(subclass, cls): File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/abc.py",
line 151, in __subclasscheck__
if subclass in cls._abc_cache: File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/_weakrefset.py",
line 69, in __contains__
return ref(item) in self.data TypeError: cannot create weak reference to 'classobj' object
Ich habe gegoogelt und viel über "TypeError: cannot create weak reference to 'classobj' object" gelesen: https://stackoverflow.com/questions/7753181/making-my-python-script-executable-causes-a-import-site-failed-use-v-for-tra
und hier: https://github.com/pypa/virtualenv/issues/108
Irgendeine Idee?