当我尝试使用MSBUILD构建我的SSDT项目时,出现以下错误
错误MSB4019:导入的项目" C:\ Program Files (86)\的MSBuild \微软\ VisualStudio的\ V11.0 \ SSDT \ Microsoft.Data.Tools.Schema.SqlTasks.targets" 没找到
在我的... \ MSBuild \ Microsoft \ VisualStudio文件夹中,我只有V12.0,V14.0和V15.0。 SSDT仅在V14.0中找到。
如何确保MSBuild在正确的位置查找包含?
答案 0 :(得分:5)
看起来.Net 4.0 msbuild.exe是错误的。
使用msbuild文件夹中的msbuild.exe而不是.Net文件夹解决了这个问题。
%ProgramFiles(x86)%\msbuild\14.0\Bin
答案 1 :(得分:0)
如果代码是cordova,请尝试:
找不到Microsoft.VisualStudio.WJProject.Default.props。错误MSB4019
输入platform/windows/cordova/lib
,用记事本打开msbuildtools
,然后编辑此部分:
var versions = ['15.0', '14.0', '12.0', '4.0'];
使用您的版本。
例如,将删除两个函数中的15和14
var versions = ['12.0', '4.0'];
并删除此行中的|| versions[2] || versions[3]
var msbuildTools = versions[0] || versions[1] || versions[2] || versions[3];
module.exports.findAvailableVersion = function () {
var versions = ['15.0', '14.0', '12.0', '4.0'];
return Q.all(versions.map(checkMSBuildVersion)).then(function (versions) {
// select first msbuild version available, and resolve promise with it
var msbuildTools = versions[0] || versions[1] || versions[2] || versions[3];
return msbuildTools ? Q.resolve(msbuildTools) : Q.reject('MSBuild tools not found');
});
};
function findAllAvailableVersionsFallBack() {
var versions = ['15.0', '14.0', '12.0', '4.0'];
events.emit('verbose', 'Searching for available MSBuild versions...');
return Q.all(versions.map(checkMSBuildVersion)).then(function(unprocessedResults) {
return unprocessedResults.filter(function(item) {
return !!item;
});
});
}