我面臨一個奇怪的問題,肯定不難,但我似乎無法找出是什麼原因造成的。通過Capistrano的部署我的應用程序後,我通過我的所有的CSS通過YUI的壓縮機,使用:Capistrano後部署uglify-js鉤子輸出,但不寫文件
run "find #{current_path}/public/static/css/ -name '*.css' -print0 | xargs -0 -I file #{cmd} file -o file"
就讓我們來看看周圍,幾個測試讓我決定使用節點的醜化-JS爲JavaScript壓縮,所以我去了一個簡單的
uglify_bin = "uglifyjs"
run "find #{current_path}/public/static/js/ -type f -name '*.js' -print0 | xargs -0 #{uglify_bin}"
在同一個配方。部署似乎很順利,但對我的js文件進行快速檢查表明uglifyjs沒有做到這一點。
這裏是控制檯輸出的摘錄:
* executing "find /home/USER/www/project/current/public/static/js/ -type f -name '*.js'| xargs uglifyjs --overwrite"
servers: ["project.com"]
[project.com] executing command
command finished in 127ms
我在哪裏是一個完整的白癡(是的,它的字......)?謝謝。
不管你信不信,我看過的文檔,並已經嘗試過。不幸的是,沒有完成這項工作。 – pixelboy
uglifyjs支持獲取多個文件名作爲參數嗎?如果不是,它可能只處理第一個JS文件。也許你可以嘗試在你的xargs命令中添加-n1: 運行「find#{current_path}/public/static/js/-type f -name'* .js'-print0 | xargs -n1 -0#{uglify_bin} 「--overwrite 另外,它是否工作,如果你手動運行find命令? – sagi
沒有更好的。更令人沮喪的是,當我執行uglifyjs bootstrap.js> bootstrap.min.js時,會創建新文件並完全壓縮。我很困惑... – pixelboy