gpt4 book ai didi

c# - 无法创建库并链接到控制台应用程序

转载 作者:太空宇宙 更新时间:2023-11-04 11:54:01 25 4
gpt4 key购买 nike

我正在使用 VS 代码在我的 Linux 机器上编写一些 C# 代码。我创建了一个初始控制台应用程序,现在我想将它的一部分移到一个库中。

所以我创建了一个多文件夹工作区,并向其中添加了我的原始目录和一个用于库的新目录。

cd 到 lib 目录并运行 dotnet new classlib命令这创建了一个标准库:

<Project Sdk="Microsoft.NET.Sdk">    
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
</PropertyGroup>
</Project>

F5 仍然构建原始版本,我可以 cd 到 lib 目录并构建它而没有错误。

现在我将我想要的文件移动到库中,并且(令人惊讶的是)上面提到的构建仍然有效。然后,我更改了库中的 namespace ,并将控制台应用程序的引用添加到库中

dotnet add reference ../<name>/<name>csproj

现在无论我构建哪个,都会出现以下错误:

 Restore completed in 24.06 ms for <project name>.
/usr/share/dotnet/sdk/2.1.302/Sdks/Microsoft.NET.Sdk/targets/Microsoft.PackageDependencyResolution.targets(198,5): error : Assets file '<path to obj>project.assets.json' not found. Run a NuGet package restore to generate this file. [<path to project>.csproj]

Build FAILED.

/usr/share/dotnet/sdk/2.1.302/Sdks/Microsoft.NET.Sdk/targets/Microsoft.PackageDependencyResolution.targets(198,5): error : Assets file '<path to lib>/obj/project.assets.json' not found. Run a NuGet package restore to generate this file. [<path to project>.csproj]
0 Warning(s)
1 Error(s)

Time Elapsed 00:00:00.65

我在两个目录中都运行了 dotnet restore,但我仍然收到错误。不确定我在这里做错了什么,我看到了一些创建 sln 文件的示例。这是必需的吗?如果不是,我该如何解决?

最佳答案

事实证明,我在 bin 目录层次结构中有一个 obj 目录,它妨碍了构建。我删除了所有 bin 和 obj 目录并重新构建。没有错误。

关于c# - 无法创建库并链接到控制台应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55051067/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com