.Net Core 构建解决方案
.Net Core build a solution
如果您尝试从命令行 运行 使用 visual studio 制作的解决方案的顶层目录:
dotnet build
我的解决方案是这样构建的:
MySolution.sln
> src
> MyProject1
> project.json
> MyProject2
> project.json
> test
> MyProject.Test
> project.json
它将失败并出现以下错误:
Couldn't find 'project.json' in current directory
如何在不必明确指定每个项目(然后无需相关维护)的情况下构建解决方案?
.NET Core 1.0 预览版 (project.json)
您可以在顶级目录(.sln 所在的位置)中使用通配符。
与SolutionDir/Src/ProjectName
中的project.json
:
dotnet build */**/project.json
如果 project.json
在 SolutionDir/ProjectName
:
dotnet build **/project.json
注:It's recommended to migrate to new csproj project format to get support and new features.
自 .NET Core 1.0 RTM
解决方案已永久恢复。
dotnet build solution.sln
在powershell中,在当前目录下构建所有csproj文件。
foreach ($csproj in $(Get-ChildItem -Recurse . -Filter *.csproj) )
{
dotnet build $csproj.FullName
}
要补充答案,如果您要发布项目,请使用 dotnet publish src\MyProject1\
发布所有文件。
发布将包含定义为包含在 project.json 中的文件。
使用 dotnet CLI 2.1,它可以构建解决方案。
这是我的配置:
{
"label": "build",
"command": "dotnet",
"type": "process",
"args": [
"build",
"${workspaceFolder}/SolutionName.sln",
"/property:GenerateFullPaths=true"
],
"problemMatcher": "$msCompile",
"group": {
"kind": "build",
"isDefault": true
}
},
如果您来到这里寻找使用 dotnet
CLI(版本 > 3.1)构建 SLN 的命令,仅使用 CLI args,它在下面。
dotnet build <PATH>/<TO>/<SLN_FILE>.sln
https://docs.microsoft.com/en-us/dotnet/core/tools/dotnet-build#arguments
如果您尝试从命令行 运行 使用 visual studio 制作的解决方案的顶层目录:
dotnet build
我的解决方案是这样构建的:
MySolution.sln
> src
> MyProject1
> project.json
> MyProject2
> project.json
> test
> MyProject.Test
> project.json
它将失败并出现以下错误:
Couldn't find 'project.json' in current directory
如何在不必明确指定每个项目(然后无需相关维护)的情况下构建解决方案?
.NET Core 1.0 预览版 (project.json)
您可以在顶级目录(.sln 所在的位置)中使用通配符。
与
SolutionDir/Src/ProjectName
中的project.json
:dotnet build */**/project.json
如果
project.json
在SolutionDir/ProjectName
:dotnet build **/project.json
注:It's recommended to migrate to new csproj project format to get support and new features.
自 .NET Core 1.0 RTM
解决方案已永久恢复。
dotnet build solution.sln
在powershell中,在当前目录下构建所有csproj文件。
foreach ($csproj in $(Get-ChildItem -Recurse . -Filter *.csproj) )
{
dotnet build $csproj.FullName
}
要补充答案,如果您要发布项目,请使用 dotnet publish src\MyProject1\
发布所有文件。
发布将包含定义为包含在 project.json 中的文件。
使用 dotnet CLI 2.1,它可以构建解决方案。 这是我的配置:
{
"label": "build",
"command": "dotnet",
"type": "process",
"args": [
"build",
"${workspaceFolder}/SolutionName.sln",
"/property:GenerateFullPaths=true"
],
"problemMatcher": "$msCompile",
"group": {
"kind": "build",
"isDefault": true
}
},
如果您来到这里寻找使用 dotnet
CLI(版本 > 3.1)构建 SLN 的命令,仅使用 CLI args,它在下面。
dotnet build <PATH>/<TO>/<SLN_FILE>.sln
https://docs.microsoft.com/en-us/dotnet/core/tools/dotnet-build#arguments