Nie wiem, jak uruchomić plik activate.bat w narzędziu Python Tools for Visual Studio Project. Mam środowisko katalogowe w moim projekcie z moim virtualenv. Ale nie wiem, jak mogę uruchomić ./env/Scripts/activate.bat
zanim projekt uruchomi główny skrypt Pythona.Jak uruchomić skrypt Pythona z Python Tools dla Visual Studio w virtualenv?
Odpowiedz
stwierdziliśmy, że jeżeli:
- main.py jest ustawiony jako plik startowy,
- w Właściwości projektu -> zakładka Debugowanie -> pole ścieżki interpretera, umieszczam ścieżkę C: ... \ env \ Scripts \ python.exe (tj. plik wykonywalny python z virtualenv)
Działa!
zwykle wskazują Visual Studio do niestandardowych startup.py
skryptu, wszelkie inne pliki wsadowe można następnie uruchomić za pomocą:
# startup.py
import os
import main.py # Whatever your main script is
os.system('activate.bat') # Call your batch files.
main.run() # Call whatever you need to from your main script.
W Visual Studio
- prawym przyciskiem myszy na projekcie
- Właściwości
- Ogólne
- Pod plikiem startowym umieścić
startup.py
(cokolwiek) - Upewnij się, że katalog roboczy jest poprawna
ja say @balmat własna odpowiedź jest najbardziej odpowiednia (i prosta) na jego pytanie – swdev
Pełna obsługa Virtual Env nadchodzi w wersji PTVS 2.0 Beta/RTM. Zobacz http://pytools.codeplex.com, aby uzyskać aktualności/aktualizacje. Wczesne wsparcie jest dostępne w wersji PTVS 2.0 Alpha.
Python Tools for Visual Studio (PTVS) 2.0 jest już dostępny, można w nim dodać virtualenv.
Otwórz Eksploratora Rozwiązanie: Widok> Solution Explorer
Kliknij prawym przyciskiem myszy na 'Python Środowiska' i wybrać opcję 'Dodaj wirtualnej Środowisko'
Twoje pytanie było ** jak mogę uruchomić ./env/Scripts/ activate.bat **, nie zaakceptowałeś mojej odpowiedzi, wysłałeś własną odpowiedź, która nie jest istotna dla pierwszego pytania, a następnie ją zaakceptował. Zła forma. – Aesthete
Wolę tę odpowiedź od balmat: nie manipulowanie źródłem, tylko środowiskiem. – swdev
Nice! Jednak nie jest konieczne uruchamianie skryptu startowego o nazwie main.py. Musisz tylko skierować interpretera do virtualenv, jak powiedziałeś. – Matej