Gruntjs Grunt Contrib Less-Sourcemaps--忽略sourceMapRootpath和sourceMapBasepath

Gruntjs Grunt Contrib Less-Sourcemaps--忽略sourceMapRootpath和sourceMapBasepath,gruntjs,less,source-maps,grunt-contrib-less,Gruntjs,Less,Source Maps,Grunt Contrib Less,好的-我正在尝试配置less,以弹出一个源映射,并正确地指向less文件的可访问路径。我可以让sourcemap正常工作,但是它转储到源映射文件中的sources数组中的路径总是不正确的。我对sourceMapBasepath或sourceMapRootpath属性所做的任何操作都不会更改源数组 下面是配置中的选项 options: { paths: ['/app/content/less'], yuicompress: true, sourceMap: true,

好的-我正在尝试配置less,以弹出一个源映射,并正确地指向less文件的可访问路径。我可以让sourcemap正常工作,但是它转储到源映射文件中的sources数组中的路径总是不正确的。我对sourceMapBasepath或sourceMapRootpath属性所做的任何操作都不会更改源数组

下面是配置中的选项

options: {
    paths: ['/app/content/less'],
    yuicompress: true,
    sourceMap: true,
    sourceMapFilename: "WebUI/app/content/css/app.css.map",
    sourceMapURL: "/app/content/css/app.css.map",
    sourceMapBasepath: '/app/content/less',
    sourceMapRootpath: '/'
},
files: {
    "./WebUI/app/content/css/app.css": "./WebUI/app/content/less/app.less"
}
始终弹出一个源数组,其中列出具有此文件夹结构的文件:

/WebUI/app/content/less/filename.less
WebUI文件夹是webroot-我不希望在那里。我已经尝试了上面显示的一百万种变体,但我添加到sourceMapBasepath或sourceMapRootpath中的任何内容都不起作用


有什么想法吗?谢谢

我的临时解决方案是在源代码映射中输出源文件-这已经足够好了,但仍然很好奇为什么我无法获得指向较少文件的正确路径。

我遇到了同样的问题,并得出结论,sourceMapRootpath有效但是sourceMapBasepath被忽略

将此路径添加到源映射中较少的文件路径上

在你的例子中,你设置了

sourceMapRootpath: "/"
    + 
"./WebUI/app/content/less/app.less" (taken from files object) 
    = 
"/./WebUI/app/content/less/app.less"
也许有一些优化使“/。/”转换为“/”

很奇怪,你用了“filename.less”而不是“app.less”

解决方案 因此,为了解决您的问题,我建议设置:

sourceMapRootpath: '../../../../'
这将导致

../../../.././WebUI/app/content/less/app.less
在./WebUI/app/content/css/app.css.map文件中