c# - 无法在 .net 核心中发布二进制文件

标签 c# asp.net-core-mvc web-deployment publish .net-core

我正在尝试自行托管一个 .net core MVC 应用程序。它适用于所有 .cs 文件。当我通过命令窗口发布它 (dotnet publish -f netcoreapp1.0 -c release) 时,它显示以下错误:

No executable found matching "bower"

我什至尝试使用 VS 发布。它生成二进制文件。但是当我在命令提示符下执行 dotnet run 时,我收到此错误消息:

project file does not exist 'project.json'

谁能建议如何使用二进制文件进行自托管?

enter image description here

enter image description here

最佳答案

从命令行运行 dotnet publish 命令时,您必须确保路径变量包含所有相关位置。

如果您从 Visual Studio 中执行发布命令,并查看“构建”窗口中的输出,您会注意到它在运行发布命令之前更新了路径变量:

enter image description here

在命令行中,您可以通过执行类似 SET Path=%PATH%;C:\Program Files (x86)\Microsoft Visual Studio 14.0\Web\External; 的操作来完成此操作

在 PowerShell 中,您可以将其设置为

$env:path += ";C:\Program Files (x86)\Microsoft Visual Studio 14.0\Web\External;"

你也可以看看这个 GitHub 问题: No executable found matching command "bower"

至于您的dotnet run 问题,您必须在包含project.json 文件的同一目录中执行此命令,或者使用-p|--project 指定项目文件位置的选项。在命令行中键入 dotnet run --help 以获取更多信息。

关于c# - 无法在 .net 核心中发布二进制文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38205662/

相关文章:

c# - 我在 C# 中声明了一个变量,但不能在 switch 语句中使用它

java - 如何从同一 war 中部署的 jar 调用 war 的方法?

visual-studio-2012 - 从TeamCity发布vs2012解决方案

c# - 单元测试多级异常——在哪里停止?

c# - .Net规则引擎

c# - MVC - 如何根据条件在下拉列表中添加 css 属性

c# - 使用 WEB API HttpClient 使用外部 API 然后以 Angular 显示反序列化结果是否可以接受?

c# - 为什么 ASP.NET Core 不能并行处理我的请求?

c# - ASP.Net MVC 6 路由错误

angular - 如何部署一个 Angular 应用程序,使其在任何路径下都能工作?