.NET Core开发日志——Runtime IDentifier
.NET Core對于傳統.NET開發人員而言是既熟悉又陌生的新平臺,所以有時遇上出乎意料的事情也純屬正常情況。這時只需點耐心,多查查資料,努力找到原因,也未嘗不是件有意義的體驗。
比如當建完一個最簡單的控制臺應用程序:
dotnet new console -o helloRID并完成編譯后:
dotnet build你在bin目錄下會發現生成的程序集是dll文件,而非之前經驗里的exe文件。
再查下工程文件,輸出類型確實是Exe。
是不是感到很意外?
固然,我們也可以使用dotnet run的方式獲得程序運行的結果,但這樣的文件格式絕不是用戶所希望的,他們沒有辦法直接運行該文件。
問題的緣由很容易借由搜索引擎找到——在編譯的時候需要額外指定Runtime IDentifier(運行時標識)。
Runtime IDentifier的作用是指定應用程序運行時的目標平臺。這樣就很容易理解了,因為.NET Core支持跨平臺,所以在編譯時編譯器默認并不知道你所想生成的可執行文件是需要在哪個平臺上運行的,只有你主動告訴它,才能得到你想要的結果。
于是運行dotnet build -r osx-x64(假設你像我一樣在macOS系統上運行程序),可執行文件如預期般出現在bin目錄的osx-64文件夾下。
如果是Windows 10系統,則運行dotnet build -r win10-x64。熟悉的exe文件再次出現。
更多的Runtime IDentifier可以在微軟官網上找到,這里需要夸一下微軟,改進后的官方文檔現在越來越好用了。
相關文章:
.Net Core開發日志——Global Tools
.Net Core開發日志——Peachpie
.NET Core開發日志——Middleware
.Net Core Cors中間件解析
原文地址:https://www.cnblogs.com/kenwoo/p/9297120.html
.NET社區新聞,深度好文,歡迎訪問公眾號文章匯總 http://www.csharpkit.com
總結
以上是生活随笔為你收集整理的.NET Core开发日志——Runtime IDentifier的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 用Way.EntityDB进行Entit
- 下一篇: C#语法——await与async的正确