Question

J'utilise Python 3 pour le développement et CollabNet Subversion Edge comme version d'un logiciel. Subversion bord est livré avec un petit programme appelé ViewVC qui est écrit en Python 2, qui est également directement livré avec elle. Il y a une variable d'environnement système appelé PYTHONHOME.

  • Si elle est définie à la distribution Python 2 de Subversion Edge, mon Python 3 ne démarre pas (même pas IDLE), donnant au lieu une messagebox d'erreur d'exécution.
  • S'il est réglé sur Python 3, ViewVC ne fonctionne pas.

Y at-il un moyen de faire le travail à la fois en même temps?

Était-ce utile?

La solution

Vous ne devriez pas besoin de mettre PYTHONHOME du tout. Python utilise (si elle est définie) pour localiser son installation. En règle générale, il devrait être en mesure de localiser sans cette variable, ainsi:. En regardant le chemin de l'exécutable python, et, à défaut, en regardant dans le registre

Autres conseils

Ecrire un fichier .bat ou cmd qui enregistre la valeur du var env PYTHONHOME, invoque ViewVC et d'attendre à la fin, puis restaure PYTHONHOME à la valeur enregistrée.

Avez-vous envisagé de modifier les services Subversion Edge pour exécuter un compte d'utilisateur spécifique, puis déplacez la variable d'environnement PYTHONHOME à une variable de niveau utilisateur pour ce compte seulement? Contrairement à une variable de l'ensemble du système? Il semble que cela devrait fonctionner.

BTW, la variable PYTHONHOME est ajoutée pour mod_python fonctionne correctement (ce qui est ce qui sert ViewVC). Si vous pouvez trouver un autre moyen d'obtenir mod_python au travail, vous pourriez essayer.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top