`dotnet build` 命令從源項目中的多個源文件及其依賴成生成一個二進位文件。預設情況下,該二進位文件將在中間語言(IL)中,並且將有一個 DLL 擴展。`dotnet build` 也將生成一個宿主應用程式運行需要的 `\*.deps` 大綱文件。 ...
說明:本文是個人翻譯文章,由於個人水平有限,有不對的地方請大家幫忙更正。
原文:dotnet-build
翻譯:dotnet-build
名稱
dotnet-build -- 生成項目和所有的依賴
概要
dotnet build [--output] [--build-base-path] [--framework] [--configuration] [--runtime] [--version-suffix] [--build-profile] [--no-incremental] [--no-dependencies] [<project>]
描述
dotnet build
命令從源項目中的多個源文件及其依賴成生成一個二進位文件。預設情況下,該二進位文件將在中間語言(IL)中,並且將有一個 DLL 擴展。dotnet build
也將生成一個宿主應用程式運行需要的 \*.deps
大綱文件。
生成需要存在一個鎖定文件,這就是說你必須預先運行 dotnet restore
在生成你的代碼之時。
任何編譯開始之前,生成動詞分析項目及其增量安全檢查的依賴。如果所有的檢查都通過了,然後繼續生成與項目及其依賴的增量編譯;否則,它退到非漸進式編譯。通過側面的標誌,用戶可以選擇接收他們如何能提高他們的生成時間的附加信息。
依賴圖中需要編譯的所有項目必須通過下麵的安全檢查,以便編譯過程是增量:
- 不要使用前/後編譯腳本
- 沒有從 PATH 載入編譯工具(例如:resgen,編譯器)
- 使用僅已知的編譯器(CSC,VBC,FSC)
為了生成一個可執行的應用程式,你需要在你的 project.json 文件中的特殊配置部分:
{
"compilerOptions": {
"emitEntryPoint": true
}
}
選項
-o
, --output
[DIR]
放置生成的二進位文件的目錄。
-b
, --build-base-path
[DIR]
放置臨時輸出的目錄。
-f
, --framework
[FRAMEWORK]
編譯一個指定的框架。該框架需要在 project.json 文件中定義。
-c
, --configuration
[Debug|Release]
定義生成下的一個配置。如果省略,則預設為調試。
-r
, --runtime
[RUNTIME_IDENTIFIER]
生成的目標運行時。
--version-suffix
[VERSION_SUFFIX]
定義了 *
應在 project.json 文件中的版本欄位被更換。格式參照 NuGet 的版本風格。
--build-profile
列印出用戶需要為了漸進式編譯解決增量的安全檢查自動打開。
--no-incremental
標志著構建為不安全的增量生成。這將關閉增量編譯,迫使項目依賴關係圖的乾凈重建。
--no-dependencies
忽略項目到項目的引用,只有生成指定生成的根項目。