ASP.NET Core默认项目发布失败

3

我正在制作我的第一个 .net core 应用程序。我刚刚在 Visual Studio 模板中创建了默认的 asp.net core web 应用程序,然后尝试使用 dotnet publish 命令,但是出现了以下错误:

PM> dotnet publish
dotnet : 'D:\Projects\coreTest\CoreTest' does not contain a project.json file
At line:1 char:1
+ dotnet publish
+ ~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: ('D:\Projects\co...oject.json file:String) [], RemoteException
    + FullyQualifiedErrorId : NativeCommandError

我没有改变任何内容。默认模板包括一个列出依赖项的project.json文件。为什么它不想发布?


你能验证 project.json 文件是否存在且有效吗? - jegtugado
它存在。Visual Studio 在我创建默认的 Web 应用程序项目时创建了它并填充了依赖项。路径为 D:\Projects\coreTest\CoreTest\src\CoreTest,因此我认为在包管理器控制台中运行时它正在查找错误的路径。 - Guerrilla
dotnet restoredotnet build是否适用于该特定文件夹? - Gerardo Grignoli
@GerardoGrignoli dotnet restore 在嵌套文件夹中的 projects.json 文件上运行良好,但是 dotnet restoredotnet build 都在抱怨找不到 projects.json 文件,因为它们在向上一级查找。我能够从菜单构建项目,并通过点击播放正常预览。只是包管理器控制台中的这些命令似乎在错误的位置查找。 - Guerrilla
2个回答

1
对于任何遇到这个问题并且看到这个答案的人,可能是因为你在不同机器上使用dotnet --version编译时存在不匹配。
project.json转换回MS Build存在重大变化
我试图在一个使用project.json版本的环境中编译一个基于MS Build版本构建的应用程序,并遇到了这个问题。作为一个新手,对于新的.NET技术一无所知,也没有仔细关注过这些变化,我很长时间都没有意识到这是罪魁祸首。

1
这似乎是包管理器的一个错误。我成功地通过右键单击项目并选择发布来发布了该项目。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接