本文翻譯自 Feature Spotlight: Python remote development with PyCharm,講述如何使用PyCharm進(jìn)行Python遠(yuǎn)程開發(fā)括丁。全文系作者原創(chuàng)袍嬉,僅供學(xué)習(xí)參考使用,轉(zhuǎn)載授權(quán)請私信聯(lián)系旷赖,否則將視為侵權(quán)行為。碼字不易,感謝支持吼和。以下為全文內(nèi)容:
這篇博客創(chuàng)作于2015年。如果您正在使用PyCharm 2018.1或者更新的版本片仿,請參考這篇博客
各位朋友大家周五好纹安,
在今天的博客中我將介紹PyCharm中的一些基本原則和特性,這些特點(diǎn)使得我們可以很容易地進(jìn)行Python遠(yuǎn)程開發(fā)。為了解釋和說明這些特性厢岂,我將使用一個非常簡單的 flask web application 作為例子光督。盡情享受吧!
注意:遠(yuǎn)程開發(fā)的特性只針對PyCharm專業(yè)版提供塔粒。如果想了解更多這方便的信息可以查看 editions comparison page
首先我從 https://github.com/mitsuhiko/flask 克隆flask倉庫结借,然后我在PyCharm的歡迎界面打開了blueprintexample
目錄,這個目錄下存儲了后面我將用來演示的 flask application 的源碼卒茬。
PyCharm打開了這個目錄并且基于該目錄創(chuàng)建了一個項(xiàng)目:
現(xiàn)在我準(zhǔn)備開始設(shè)置遠(yuǎn)程機(jī)器來啟動遠(yuǎn)程開發(fā)了船老。我使用了在PyCharm中提供良好支持的Vagrant。在我之前的一篇博客中我已經(jīng)涵蓋了Vagrant的集成圃酵,所以這里提供的僅僅是運(yùn)行一臺VM的直接步驟柳畔。我在項(xiàng)目的根目錄進(jìn)入 Tools | Vagrant | Init 然后選擇了事先從 collection of vagrant boxes 加載好的Ubuntu 14.04的鏡像,這個操作會在項(xiàng)目根目錄下創(chuàng)建Vagrantfile」停現(xiàn)在薪韩,我將編輯這個文件來配置一個專用網(wǎng)絡(luò),使我的VM從我的主機(jī)上可見:
接著捌锭,我將使用 Tools | Vagrant | Up 來啟動VM俘陷,PyCharm會向我展示VM已經(jīng)啟動并且正在運(yùn)行:
我們可以在PyCharm中打開一個本地的終端來測試VM:
可以看到,VM響應(yīng)了ping請求」矍現(xiàn)在拉盾,我想在VM上運(yùn)行我的Web應(yīng)用程序,所以我需要將我的項(xiàng)目源代碼復(fù)制到遠(yuǎn)程主機(jī)上豁状。在PyCharm內(nèi)部部署工具中很容易做到這一點(diǎn)捉偏。
我轉(zhuǎn)到 Tools | Deployment | Configuration 并指定了連接VM的參數(shù):
在同一個窗口下的 Mappings 標(biāo)簽欄中我指定了路徑的映射規(guī)則:
在這個例子中我希望我當(dāng)前的本地目錄 blueprintexampe 被映射到遠(yuǎn)端的 /home/vagrant/blueprintremote
現(xiàn)在我可以在項(xiàng)目視圖中右鍵單擊我的項(xiàng)目,并選擇 Upload to :
這將把我的項(xiàng)目上傳到遠(yuǎn)程機(jī)器上的指定目錄:
最簡單的特點(diǎn)之一是替蔬,您可以通過單擊 Tools | Deployment | Automatic Upload 來設(shè)置自動上傳:
當(dāng)完成了這個設(shè)置后告私,本地的所有更改將自動上傳到遠(yuǎn)程機(jī)器,因此您不必?fù)?dān)心遠(yuǎn)程主機(jī)上的代碼更新承桥。很酷驻粟,不是嗎?
所以現(xiàn)在凶异,我要修改我的項(xiàng)目中的一個文件蜀撑,使得 flask application 能夠在遠(yuǎn)端可見(添加 host= '0.0.0.0' 作為一個參數(shù)到 app.run() ),PyCharm會將本地的變化自動上傳到遠(yuǎn)程機(jī)器:
接下來剩彬,我將指定項(xiàng)目所使用的Python解釋器酷麦。我進(jìn)入 File | Settings(在Mac OS上是Preferences)| Project | Project Interpreter。默認(rèn)情況下喉恋,PyCharm將本地Python解釋器設(shè)置為項(xiàng)目解釋器沃饶,因此我將其更改為遠(yuǎn)程解釋器:
由于我已經(jīng)創(chuàng)建了部署配置母廷,PyCharm將開始從現(xiàn)有部署配置導(dǎo)出Python解釋器設(shè)置:
但我也可以手動指定遠(yuǎn)程解釋器,使用SSH憑據(jù)或Vagrant配置糊肤。在這里我將手動完成:
在指定了新的遠(yuǎn)程Python解釋器之后琴昆,PyCharm開始索引,并發(fā)現(xiàn)在項(xiàng)目解釋器上沒有安裝flask模塊:
我可以通過在被紅色突出顯示的未解決的參考錯誤上使用 ALT+Enter 輕松解決這個問題:
好吧」萑啵現(xiàn)在一切正常业舍,所以我們最終可以指定 Run | Debug 配置并啟動我們的應(yīng)用程序。讓我們進(jìn)入 Run | Edit Configurations 并添加一個新的Python Run | Debug配置:
在 Run | Debug 配置對話框中升酣,我指定新配置的名稱和要在遠(yuǎn)程主機(jī)上執(zhí)行的腳本舷暮。Python默認(rèn)設(shè)置了這個新的運(yùn)行配置的項(xiàng)目解釋器(在這種情況下為遠(yuǎn)程),最后我需要為這個特定的運(yùn)行配置指定路徑映射:
看起來我們都準(zhǔn)備好了噩茄。我點(diǎn)擊運(yùn)行按鈕:
PyCharm顯示應(yīng)用程序在VM上的端口5000上運(yùn)行并運(yùn)行下面。我打開瀏覽器檢查應(yīng)用程序是否真的工作:
從現(xiàn)在開始良蒸,我們可以像通常的本地項(xiàng)目一樣使用這個項(xiàng)目逗柴。PyCharm負(fù)責(zé)上傳任何本地的更改到遠(yuǎn)程機(jī)器并保持VM運(yùn)行。
使用相同的 Run | Debug 配置辟躏,我們可以做一個簡單的遠(yuǎn)程調(diào)試會話君纫,在編輯器中放置幾個斷點(diǎn):
單擊“調(diào)試”按鈕或轉(zhuǎn)到“運(yùn)行調(diào)試”:
以上就是全部的內(nèi)容!希望您能理解PyCharm的遠(yuǎn)程開發(fā)功能芹彬,它能夠使得Python遠(yuǎn)程開發(fā)成為輕而易舉的事蓄髓。
如果您仍渴望了解PyCharm遠(yuǎn)程開發(fā)能力以及其他遠(yuǎn)程開發(fā)功能的詳細(xì)信息,請參閱聯(lián)機(jī)幫助舒帮。
以上就是本文的全部內(nèi)容会喝,如果您喜歡這篇文章,歡迎將它分享給朋友們玩郊。
感謝您的閱讀肢执,祝您生活愉快!
作者:小美哥
2018-05-20