我们正在使用cake script v0.18.0编译.net框架(2.0,3.5,4.0,4.5,4.5.1,4.6)项目。
但是,我们在编译3.5框架项目时遇到了以下问题
MSBUILD:错误MSB4025:无法加载项目文件。缺少根元素。
机器规格:
1.VS 2017专业人士
2.SDK 10
3..Net core 2.0.3
MSBuild汇编蛋糕脚本代码:
// Use MSBuild
MSBuild(projectFilePath, settings =>
settings.SetConfiguration(configuration).
WithProperty("referencepath" , refPath).
SetVerbosity(Verbosity.Minimal).
SetNoConsoleLogger(true).
WithProperty("PreBuildEvent" , "").
AddFileLogger(new MSBuildFileLogger { LogFile = "../cireports/warnings/"+ filename +".txt", MSBuildFileLoggerOutput = MSBuildFileLoggerOutput.WarningsOnly }).
AddFileLogger(new MSBuildFileLogger { LogFile = "../cireports/errorlogs/"+ filename +".txt", MSBuildFileLoggerOutput = MSBuildFileLoggerOutput.ErrorsOnly}).
WithProperty("CodeAnalysisRuleSet","\""+sourcedirInfo.FullName +@"\FxCop.ruleset"+"\"").
WithProperty("StyleCopOverrideSettingsFile","\""+sourcedirInfo.FullName+@"\settings.StyleCop"+"\"").
//UseToolVersion(toolsVersion).
WithProperty("OutputPath" , projoutputpath));
//Deletes the empty error log file.
if(FileExists("../cireports/errorlogs/"+ filename +".txt"))
DeleteFile("../cireports/errorlogs/"+ filename +".txt");
if(FileExists("../cireports/warnings/"+ filename +".txt"))
{
var streamReader = new System.IO.StreamReader("../cireports/warnings/"+ filename +".txt");
var warnings = (streamReader.ReadToEnd()).Split('\r');
streamReader.Dispose();
if (warnings.Length-1 <= 0)
//Deletes the empty warning log file.
DeleteFile("../cireports/warnings/"+ filename +".txt");
//Displays the errors & warnings count in console log.
Information("\r\nCompilation result: {0} Error(s) {1} Warning(s)\r\n", 0, warnings.Length-1);
}