使用“dnu publish”排除发布项目上的文件夹

时间:2015-08-04 22:13:16

标签: asp.net visual-studio-2015 asp.net-core

如何使用“dnu publish”命令从wwwroot中排除文件夹。

示例:在我的项目中存在许多文件夹

我需要排除 wwwroot / lib wwwroot / source

我正在使用clr 1.0.0-beta7-12302

4 个答案:

答案 0 :(得分:3)

wwwroot文件夹的处理方式不同。它被称为 webroot 。此文件夹中的内容在发布(see here)期间不会通过通配。建议将源代码和输出放在 webroot

之外

您是否有必须在此文件夹中存储源代码和二进制文件的场景?

答案 1 :(得分:2)

Project.json文件中,您可以指定在使用publishExclude部分中的sources属性发布时要排除的文件。 https://github.com/aspnet/Home/wiki/Project.json-file#sources

答案 2 :(得分:1)

我也在寻找一种方法来排除wwwroot/lib目录的发布,我遇到了this post from Scott Hanselman。在帖子中,他展示了如何更改凉亭组件的存储位置(例如从wwwroot/lib/bower_components)。

对我来说,这删除了wwwroot/lib目录,因此不再发布这些库。我以为我会把它扔到这里以防万一有人可以使用它。

答案 3 :(得分:1)

.NET Core 1.0 RTM 中的

MS dropped support for bower_components and node_modules exclusion。我能够实现的最好的方法就是排除/src文件夹,以便减少发布大小。

Project.json(不包括Bower组件SRC文件

"publishOptions": {
    "include": [
        "wwwroot",
        "Views",
        "Areas/**/Views/**",
        "appsettings.json",
        "web.config"
    ],
    "exclude": [ "wwwroot/**/src/**" ]
}