2013-08-02 56 views
1

我想創建一個批處理文件,在Windows上單擊一次即可啓動我的應用程序。我有:使用.bat文件自動部署時venv&localhost的問題

cd "C:\Users\<project_dir>" 
venv\scripts\activate 
python __init__.py 
start /d "C:\Program Files (x86)\Google\Chrome\Application\" chrome.exe localhost:5000 

問題1:雖然venv\scripts\activate工作手動,它不會在批處理文件(我也嘗試start /d)工作。

問題2:使用python __init__.py啓動Flask服務器會導致批處理腳本暫停,從而永遠不會啓動瀏覽器。

+0

您能否指定'venv \ scripts \ activate'的含義? – Monacraft

+0

它在Windows中啓動虛擬環境(http://flask.pocoo.org/docs/installation/)。 – zadrozny

回答

1

這應該工作:

cd "C:\Users\<project_dir>" 
start venv\scripts\python __init__.py 
start /d "C:\Program Files (x86)\Google\Chrome\Application\" chrome.exe localhost:5000 

我已經通過直接使用虛擬環境,而不激活它解決您的問題#1。您也可以執行call venv\scripts\activate,然後使用start python __init__.py調用腳本。

通過運行服務器start來解決問題#2,從而產生一個新的進程。

+0

謝謝,米格爾。儘管在關閉命令提示符的同時打開了Python(命令行),但確實如此。任何想法如何我可以在命令提示符下執行此操作?用於停止和重新啓動服務器。 – zadrozny

+0

嘗試使用'pythonw'而不是'python'。 – Miguel

+0

謝謝。包含命令提示符的腳本,但命令提示符仍然關閉。有沒有辦法讓Command Prompt保持打開狀態(就像手動輸入命令時一樣)? – zadrozny