現在以Github上的示例來講解如何使用https://github.com/qmlnet/qmlnet-examples
1、先確保機器已安裝 .net core sdk 2.2
2.下載示例 ,還原nuget包,編譯項目,然后右鍵工程點發布/publlish, 配置發布的中選項:
部署模式:獨立, 這會自動輸出所有依賴項目到publish目錄,這樣目標機器不需要安裝dotnet core runtime
目標運行時:win-x64 ,選擇你要發布的平台,linux為 linux-x64
點發布即可。
在發布的文件夾中點Features.exe 運行即可,或 使用命令:dotnet Features.dll
此時你會發現界面沒有啟動,實際在下載qt依賴項目:qmlnet-qt-runtimes,下載完后就會顯示。
可以從啟動代碼
RuntimeManager.DiscoverOrDownloadSuitableQtRuntime();
看出問題。
如何網絡不好,可以手動下載后放到程序目錄下
window 包:"https://github.com/qmlnet/qt-runtimes/releases/download/releases/qt-5.12.2-ad0689c-win-x64-runtime.tar.gz"
linux 包:"https://github.com/qmlnet/qt-runtimes/releases/download/releases/qt-5.12.2-ad0689c-linux-x64-runtime.tar.gz"
在程序根目錄創建qmlnet-qt-runtimes文件夾,將window包解壓到qt-5.12.2-ad0689c-win-x64,里面結構為
qmlnet-qt-runtimes
|--------qt-5.12.2-ad0689c-win-x64
|----qt
|----version.txt
linux 對應就是將qt-5.12.2-ad0689c-win-x64改為qt-5.12.2-ad0689c-linux-x64。
注意別在window上解壓qt-5.12.2-ad0689c-linux-x64-runtime.tar.gz,因為里面有些linux的link在windows上無法識別,
所有需要在linux上解壓。
對於windows上打開會有console 窗體,可以安裝NSubsys 的nuget包解決,安裝后再發布就不會有console 窗體顯示了