我有以下一组程序集:Program.exe,Lib1.dll,Lib2.dll,在.NET 4.5上运行的SkiaSharp.dll。
Program.Main调用Lib1.Method1,Lib1.Method1调用Lib2.Method2,Lib2.Method2调用Lib2.Method3,Lib2.Method3调用SkiaSharp.Method。所有方法都是公开的,使用的语言是C#。
当使用Visual Studio 2017在Release模式下构建Lib2时,一切正常。
当使用MSBuild从命令行在Release模式下构建Lib2时,在运行时抛出以下异常:System.MethodAccessException:尝试方法'Lib2 .Method2'访问方法'Lib2.Method3'失败。
MSBuild命令行很简单:
MsBuild.exe Lib2.csproj /t:Rebuild /verbosity:quiet /p:Configuration=Release;Platform=AnyCPU;DefineConstants="TRACE;WIN";OutputPath=bin\Release\
如何使用MSBuild以与Visual Studio相同的方式执行构建?