问题标签 [grunt-contrib-copy]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
gruntjs - Grunt 任务可以从运行它们的文件夹“向上”导航吗?
我正在尝试构建我的资产,以便多个项目可以共享构建脚本的“阶段”。例如,如果我有 3 个都使用 Bootstrap 和 jQuery 的基于 Web 的产品,我只想从共享的“库”中获取库。
建议文件夹的结构如下:
我希望每个“app”文件夹中的 Gruntfile.js 能够“导入”或以其他方式执行sharedGrunt.js
. 我还没有跨过那座桥,因为我被困在第一个概念验证测试中:一个简单的副本。
因此,在应用程序的一个Gruntfile.js
文件中,我有一个如下所示的复制任务:
如您所见,我尝试从 Gruntfile 上一层。这是包含“shared”、“app1”和“app2”的目录。然后向下导航到共享库文件夹以获取 jQuery。
任务“成功”(没有抛出实际错误),但没有文件被复制。
我怎样才能实现我的目标?我是否需要将“包罗万象”的 gruntFile 放入包含所有项目的“父”文件夹中?我不希望开发人员要求检查整个父母。我希望开发人员能够检查“app1”和“shared”并使用它运行。
javascript - 通过 forEach 循环 grunt 任务以复制具有数组长度的任务
无法使用 Grunt JS 任务运行器获得正确的解决方案,所以这是我的问题。
目标:多次重复一项任务。次数是数组的长度。在数组中,我使用“名称”来构建路径(源和目标)以在文件夹中复制文件。
我正在尝试使用复制任务( grunt-contrib-copy )。
我能够将数据获取到复制任务但不在正确的位置:src 有时是空的,有时是错误的。对于 dest 文件夹也是如此。
我怀疑我的 Javascript 有问题,或者无法实现(将这些参数传递给 grunt 复制任务或其他任务..)
node.js - 当我运行 Grunt 时,我收到以下消息:找不到本地 npm 模块“grunt-contrib-copy”。安装了吗?
我一直在尝试安装 Grunt。当我运行 grunt 时,我会收到以下消息和警告列表:
我试过“npm install”、“npm install grunt --save-dev”、“grunt init:node”。解决问题;它没有用。任何人都可以帮忙吗?谢谢。
gruntjs - Grunt 复制完全排除文件夹(不仅仅是内容)
[编辑:已解决,请参阅下面的答案]
我想运行一个grunt-contrib-copy任务,它将所有内容从一个目录(源目录)复制到另一个位置(分发目录),但一个文件夹除外。换句话说,给定结构:
我想移动“图像”但没有“图标”,产生以下内容:
但是,我得到的是:
我已经查看了关于 SO 的以下问题:
但是我的语法有问题。我使用了各种 globbing 模式,最接近的成功(适用于任意数量的不同 globbing 模式)是在目标位置创建文件夹,但其中没有任何文件。
这是我认为与此答案中接受的答案或多或少相同的内容:
但它会导致一个空的“favicons”目录。
这是我尝试过的许多模式中的至少一种,它也导致了一个空的“favicons”目录。这对我来说最有意义,因为我说的是“复制所有内容”,然后是“除了网站图标”。我不需要为排除匹配使用通配符,因为我知道我有一个名为 favicons 的目录。我还尝试了以下前导斜杠和尾随斜杠(不带通配符)的组合:
gruntjs - 复制多个文件夹时出现问题
我对 grunt 很陌生,所以我需要一些帮助。
我在官方上问过这个问题,gruntjs/grunt-contrib-copy
但没有得到回应。
我想使用grunt-contrib-copy
从某个目录复制文件到另一个目录,它们看起来像这样:
我的 gruntfile 是这样配置的:
当我运行父任务时, /assets/sass/bootstrap 文件夹被正确复制到他的命运中。部分文件也是如此。
但是由于某种原因,所有其他文件夹都没有被复制,我没有收到任何错误!
运行 grunt parent --verbose 我得到了这个:
任何人都知道我在这里做错了什么?
谢谢!
gruntjs - 在 Grunt 中按顺序运行任务
我的印象是,在 grunt.registerTask(taskName, taskList) 中,taskList 将按顺序运行(即一个完成,然后再进入下一个)。我想不是这样吧?
鉴于此任务:
在运行副本之前,如何确保 concat/ngconstant/targethtml 完整?我遇到了问题,因为 ngconstant 在 concat 完成之前正在运行。
编辑:任务未按顺序运行的详细信息。
'concat:local' 创建一个被 'ngconstant:common' 使用的 aggregate.json 文件。如果我删除现有的 aggregate.json 文件,则 ngconstant:common 任务会出错,因为 aggregate.json 文件丢失(但文件确实在 ngconstant 运行后创建)。另外,如果我不删除文件,而只是进行更改,例如更改 concat 使用的源文件中的版本号,则 ngconstant 创建的文件不会接受更改,因为它不会等到新的聚合。 json 是由 concat 创建的。
编辑2:任务代码
javascript - 如何在每个目录中复制单个文件
我想配置和执行一个任务,递归地复制每个目录中的指定文件。具体来说,如果不存在,我希望将“index.php”复制到我的 Web 项目的每个目录和子目录中。我试过使用multidest
,copy
但multidest
似乎不允许通过通配符指定路径(太糟糕了!)。我怎么能解决这个问题?谢谢
node.js - 应该省略的 grunt 自定义任务复制文件
我grunt copy
定义了一对任务:
并将它们组合在自定义任务中
在modules
文件夹内,我想复制所有内容但scss
文件。当我运行时grunt copy:develop
,这具有我期望的行为,除了*.scss
复制之外的所有文件。但是,当我运行时grunt copy_dev
,所有内容modules
都会被复制过来。
这是输出的一部分grunt copy_dev --verbose
:
如您所见,*.scss
执行自定义任务时会复制许多文件,而它们不会通过常规copy:$name
调用进行。
为什么是这样?
bower - Grunt 和 bower 自动依赖
我正在为我的网络应用程序使用 bower 和 grunt,到目前为止,我在尝试将资源导入 dist/ 目录时遇到了一些问题。我正在使用材料设计图标,但我只需要其中的几个。到目前为止,我唯一的机会就是手动告诉 grunt 在复制任务中要复制什么。有没有办法只为使用的资源自动完成这项工作?
windows - 无法使用 grunt 从 Windows 复制到 OSX
试图将文件从远程 Windows 10 计算机复制到 OSX。
这一切过去几年都可以正常工作,在过去的几个月里,它已经停止工作了。可能是在我将远程主机升级到 Win10 的时候,但不能确定。
尝试执行以下 grunt 任务:
...失败并出现以下错误(注意 EINVAL 等同于 *nix 世界中的“无效参数”):
有趣的是它正确地遍历树并找到没有问题的源文件,但随后以失败的副本响应。
如果我删除任何子目录,一切正常:
有什么想法,或者下一步要调试吗?