aspnetboilerplate - 对于 asp.net 样板核心版本,发布需要 robocopy
问题描述
在 Windows 上为新下载的 asp.net 样板模板执行“dotnet publish”时,一切正常,并且可以使用生成的 puplish 文件夹。
但是,在 linux 上执行相同操作时,我得到以下信息:
/bin/sh: 2: /tmp/tmpda90e7b4d99846c4936a6816fb7d9654.exec.cmd: robocopy: not found
有没有一种特定的方式我应该在 Linux 上发布 asp.net 样板文件?
解决方案
AspNet Boilerplate 合并解决方案具有执行步骤的PrepublishScriptRobocopy
。由于 Linux 操作系统没有 Robocopy 命令,因此您需要在MyProject.Web.Host.csproj中删除以下行
<Exec Command="robocopy $(MSBuildProjectDirectory)\wwwroot\dist\ $(MSBuildProjectDirectory)\wwwroot\ /S /E /MOVE" IgnoreExitCode="True" />
你需要手动完成这一步;复制$(MSBuildProjectDirectory)\wwwroot\dist\
to的内容$(MSBuildProjectDirectory)\wwwroot\
PS:MSBuildProjectDirectory是一个属性,它将为您提供在命令行上调用的项目文件的完整路径
推荐阅读
- toad - 在输出表中关闭 Toad 自动换行
- vue.js - 垂直 vuetify 选项卡
- python - 如何在文件夹中创建所有 django 应用程序?
- powershell - 卸载/挂载连接的 USB 磁盘
- linux - 在coldfusion中使用sqlldr将数据插入数据库
- ios - SwiftUI 视图 - viewDidLoad()?
- google-colaboratory - ValueError:带有 DeepLab demo.ipynb 的未知 url 类型
- python - 在 python 3.6 中很难为颜色条绘制图例
- java - 在整数数组中查找两个元素的总和并返回两个元素的第一个匹配项的索引,对某些人有效,对少数人无效
- javascript - 获取在 JS for of 循环中看到的上一个项目?