Aar*_*on0 4 .net msbuild visual-studio-2017 .net-standard
我创建了一个VS2017解决方案,其中包含一个针对.NETStandard 1.4的示例库
为此,我添加了一个类:
using System;
namespace ExampleNetstandard
{
public class Example
{
public string A { get; set; }
}
}
Run Code Online (Sandbox Code Playgroud)
从Visual Studio可以很好地进行编译,但是如果您清除bin和obj目录,然后使用以下命令从msbuild进行构建:msbuild ExampleNetstandard.sln / t:Build / p:Configuration = Release / p:Platform =“ Any CPU”
我收到以下错误:
C:\ Users \ Aaron \ AppData \ Local \ Temp.NETStandard,Version = v1.4.AssemblyAttributes.cs(4,20):错误CS0400:在全局命名空间中找不到类型或名称空间名称'System' (是否缺少程序集引用?)[D:\ src \ Example Netstandard \ ExampleNetstandard.csproj] obj \ Release \ netstandard1.4 \ ExampleNetstandard.AssemblyInfo.cs(6,12):错误CS0246:类型或命名空间名称'找不到系统(您是否缺少using指令或程序集引用?)[D:\ src \ ExampleNetstandard \ ExampleNets tandard.csproj]
我需要做些特定的事情才能从msbuild中构建这种项目吗?我正在对此进行调查,因为我们的TeamCity服务器在实际项目中抛出了此错误
如果删除了bin和obj目录,则需要再次还原软件包。运行时dotnet restore
,在obj目录中会发出一些文件,您需要进行编译。另外,对于dotnet核心项目,您应该坚持使用dotnet cli。由于dotnet cli附带了正确的msbuild for core版本。
您可以通过运行来还原软件包dotnet restore
,然后运行dotnet build -c Release
以编译您的应用程序。每当您清理obj目录时,您都必须运行dotnet restore
归档时间: |
|
查看次数: |
1389 次 |
最近记录: |