簡體   English   中英

如何在沒有互聯網的情況下在樹莓派上包含 nuget 包?

[英]how to include nuget package on raspberry pi without internet?

有沒有辦法在沒有互聯網的情況下在樹莓派上使用帶有 dotnet 的 nuget 包? 我已經在樹莓派上安裝了 dotnet SDK。 我還在樹莓派上安裝了 nuget CLI。 我正在使用帶有單聲道的 nuget CLI。 我遵循了這個問題的第二個答案: dotnet add package with local package file

我從包創建了一個提要。 當我輸入:

dotnet add package MyPackage -s ./packages

我得到這個作為輸出:

Writing /tmp/tmp3Ax5wm.tmp
info: Adding PackageRefernce for package 'system.device.gpio' into project '/home/pi/ws/dotnet/testapp.csproject'.
info: Restoring packages for /home/pi/ws/dotnet/testapp.csproject...
error: Unable to load the service index for source https://api.nuget.org/v3/index.json.
error: Resource temporarily unavailable

有人有想法嗎? 我在樹莓派上用 U 盤復制了 .nupkg。 也許在樹莓派上運行 nuget 服務器並將其推送到本地服務器並從那里安裝? 例如https://github.com/ai-traders/liget 有沒有簡單的方法來解決這個問題?

我建議您添加包含您需要的所有包的目錄作為本地文件共享。 然后,您只需將該本地文件共享定義為應用根目錄下的 nuget.config 文件中的源。 然后,當您運行該命令時,它將檢查該包的文件共享。 實施起來要容易得多,而不必托管 nuget 服務器。

這里有一些關於它的文檔: https : //docs.microsoft.com/en-us/nuget/hosting-packages/local-feeds

我建議您不要在樹莓派上使用 .Net core SDK,而是在 .Net core Runtime 上使用,然后您可以在真正的 PC 上開發您的 .Net core 應用程序並發布到發布文件夾。 在發布期間,.Net 核心將 nuget 包的所有 DLL 還原到發布文件夾中。 之后,您可以輕松地將您的發布文件夾復制粘貼到您的樹莓dotnet yourpath/yourApplicationName.dll在 Linux-cli 中使用dotnet yourpath/yourApplicationName.dll啟動您的應用程序,或者在 Windows 中執行發布文件夾中的 application.exe。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM