![](/img/trans.png)
[英]How to add existing package in Python project in Visual Studio 2017 (for IntelliSense)
[英]How to enable Intellisense of my own .Net library for a Python application in Visual Studio 2017?
我正在使用 pythonnet ( https://github.com/pythonnet/pythonnet ) 並在同一個解決方案空間中引用了一個 .Net 庫,但它似乎沒有提取任何用於 Intellisense 的信息。 事實上,VS 給出了一個錯誤:“無法解析“ReferenceLibarary”。這個模塊可能缺少智能感知。那么我如何將智能感知添加到我的“模塊”中?
即使有錯誤,腳本仍然可以運行(在 VS 內或外)。 我已經設置了徹底的 XML,因為還有一個用於 chm 輸出的沙堡項目。 沙堡項目能否輸出相應缺失的內容?
使用 ironpython-stubs 模塊。
確保你的 dll 在 sys.path 中,然后從 ironpython ipy -m ironstubs make --output stubs.min 運行
然后將“python.autoComplete.extraPaths”設置為\\ironpython-stubs\\release\\stubs.min
奇跡般有效
彼得史蒂文斯的回答對我來說似乎很好。 他的解決方案使用IronPython 生成存根。 這些存根依次由 CPython 自動完成機制使用,例如,在 Visual Studio Code 中。
假設您有位於 c:\\dev\\HTL\\bin\\release\\HTL.dll 中的 ac# dll,您想從 Python 訪問並且需要自動完成來幫助代碼。 安裝 IronPython 並下載 ironpython-stubs 模塊后,您可以執行以下操作:
ipy -m ironstubs make HTL --path="c:\\dev\\HTL\\bin\\release\\HTL.dll" -output stubs.min
然后,正如彼得在上面的回應,在 VS Code 中使用 File | 偏好 | 將完整的 stubs.min 路徑添加到“python.autoComplete.extraPaths”的設置。 在 VS Code 編輯器中將目標 dll 導入您的 *.py 文件后,您現在應該能夠自動完成該 dll 中包含的類。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.