windows 下 make 命令如何执行多个命令

2016-08-29 15:56:47 +08:00
 EchoChan

工具用的是 GnuWin32 的 make 工具。 makefile 如下:

.PHONY: all
all:
	(make css & make js & make server & wait)

.PHONY: css
css:
	postcss --watch --use autoprefixer --use postcss-import css/app.css --output bundle/app.css

.PHONY: js
js:
	babel --watch js/app.jsx --out-file build/app.js

.PHONY: server
server:
	browser-sync start --server --files='index.html,bundle/app.css,build/app.js'

.PHONY: clean
clean:
	rm -r bundle build

单独执行 make css 、 make js 、 make server 都没问题。 但执行 make all 就只执行带一条命令 make css 而已,也没有错误提示,求解缘由。

4277 次点击
所在节点    前端开发
5 条回复
Jeremial
2016-08-29 16:23:46 +08:00
```
all: css js server clean

css:
postcss --watch --use autoprefixer --use postcss-import css/app.css --output bundle/app.css

js:
babel --watch js/app.jsx --out-file build/app.js

server:
browser-sync start --server --files='index.html,bundle/app.css,build/app.js'

clean:
rm -r bundle build

.PHONY: all css js server clean
```
TerrenceSun
2016-08-29 16:50:01 +08:00
另外,非要在调用一次 make 的话,要用$(make)而不是 make
TerrenceSun
2016-08-29 16:51:35 +08:00
还可以试一下 make css js server 会出什么情况
EchoChan
2016-08-29 16:52:52 +08:00
@Jeremial 同样的问题。

不知道是不是因为在 windows 上的缘故。
Jeremial
2016-08-29 17:02:37 +08:00
@EchoChan 问题可能出在 --watch 上.
看这个选项, 应该是一个监听程序, 所以它不会退出, 后面的程序自然就不会执行了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/302471

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX