排除ASP.NET Core 2中的文件夹
问题描述:
如何从构建中排除我的X
文件夹?排除ASP.NET Core 2中的文件夹
如果我手动删除它,并且dotnet build
和dotnet run
它需要20秒的时间来运行这两个命令并让我一个工作的服务器。
另一方面,如果我手动包含它,则需要2分钟来运行这两个命令。
我试着加入:
<ItemGroup>
<Compile Remove="X\**" />
<Compile Remove="wwwroot\**" />
<Content Remove="X\**" />
<EmbeddedResource Remove="X\**" />
<None Remove="X\**" />
</ItemGroup>
我.csproj
文件,但这似乎并没有解决问题。
那么如何指示dotnet
完全忽略该文件夹呢?
答
要排除较大的文件夹以加速构建,需要从“默认”项(默认搜索的模式)中排除项目,因为大部分时间都用于搜索文件夹(尽管MSBuild 15.5将包含优化那)。
这个添加到项目文件,以排除不应该在第一时间被搜索大的文件夹:
<PropertyGroup>
<DefaultItemExcludes>$(DefaultItemExcludes);my_large_folder\**</DefaultItemExcludes>
</PropertyGroup>
+0
是的,它修复了它。谢谢。对于未来的访问者:我提出的问题几乎没有影响,所以你可以删除它们。 – Shoe
是不常见的做法,只是排除源控制'node_modules'(一般在。 gitignore)? – Jonesopolis
项目文件夹根目录下的'node_modules'文件夹应该已被排除,这个项目是否真的使用了'Microsoft.NET.Sdk.Web' SDK? (csproj文件) –
@Jonesopolis这只会排除它使用'git'版本化。在编译源代码时,无论是在本地,还是在虚拟机或Docker容器中,递归地尝试解析和编译该目录中的东西的问题仍然存在。 – Shoe