【发布时间】:2015-08-04 22:13:15
【问题描述】:
如何使用“dnu publish”命令从 wwwroot 中排除文件夹。
示例:在我的项目中存在许多文件夹
我需要排除 wwwroot/lib 和 wwwroot/source。
我正在使用 clr 1.0.0-beta7-12302
【问题讨论】:
标签: asp.net visual-studio-2015 asp.net-core
如何使用“dnu publish”命令从 wwwroot 中排除文件夹。
示例:在我的项目中存在许多文件夹
我需要排除 wwwroot/lib 和 wwwroot/source。
我正在使用 clr 1.0.0-beta7-12302
【问题讨论】:
标签: asp.net visual-studio-2015 asp.net-core
wwwroot 文件夹的处理方式不同。它被称为 webroot。在发布 (see here) 期间,此文件夹中的内容不会经过 globbing。建议将源代码和输出放在webroot中。
您是否有必须在此文件夹中存储源代码和二进制文件的情况?
【讨论】:
在Project.json 文件中,您可以使用sources 部分中的publishExclude 属性在发布时指定要排除的文件。 https://github.com/aspnet/Home/wiki/Project.json-file#sources
【讨论】:
我也在寻找一种方法来排除wwwroot/lib 目录的发布,我遇到了this post from Scott Hanselman。在帖子中,他展示了如何更改 Bower 组件的存储位置(例如,从 wwwroot/lib 到 /bower_components)。
对我来说,这删除了 wwwroot/lib 目录,因此这些库不再发布。我只是想我会把它扔在这里以防有人可以使用它。
【讨论】:
MS dropped support for bower_components and node_modules exclusion 在 .NET Core 1.0 RTM 中。我能做到的最好的就是排除/src 文件夹,这样可以减少发布大小。
"publishOptions": {
"include": [
"wwwroot",
"Views",
"Areas/**/Views/**",
"appsettings.json",
"web.config"
],
"exclude": [ "wwwroot/**/src/**" ]
}
【讨论】: