如何在Linux的Monodevelop中使用MSBUILD引擎进行VB.NET项目



当我尝试构建一个hello-world vb.net项目并在Monodevelop中启用MSBuild时,我会收到此错误。

'Error: Target named 'Build' not found in the project. (HelloWorld)'

禁用MSBUILD功能时,该项目将构建。我真的不知道我在做什么,但是我正在尝试设置自己,以便我可以开始编写.NET应用程序。我不确定我需要此功能,因此也许有人可以启发我使用MSBUILD的目的。谢谢。

好的,因此由于支持VB.NET的支持不如C#支持。

第一个单体开发不会将<Import Project="$(MSBuildBinPath)Microsoft.VisualBasic.targets" />添加到.vbproj文件。

这是作为错误554445

提交的

如果将此导入添加到.vbproj中,则应修复有关丢失的"构建"目标的错误。但是,您可能会遇到下一个问题。

然后,

单声道的msbuild尝试使用vbnc.exe,而exe似乎目前没有单声道运输。

如果您尝试使用vbc.exe而不是通过将vbtoolexe设置为项目中的vbc.exe:

<VbcToolExe>vbnc.exe</VbcToolExe>

然后遇到另一个例外。

System.TypeInitializationException: The type initializer for 'Microsoft.CodeAnalysis.VisualBasic.VisualBasicCommandLineParser' threw an exception. ---> System.TypeLoadException: Could not resolve type with token 01000286 (from typeref, class/assembly Roslyn.Utilities.IObjectReadable, Microsoft.CodeAnalysis, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35)

登录了另一个错误,但它是一个私人错误,所以您看不到它。

因此,当前的VB.NET项目不使用MSBuild编译,因此您要么需要使用Xbuild或默认的内置支持在Monodevelop中使用vbc.exe。

最新更新