Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Heroku部署,Yuglify没有使用Django管道的此类文件_Python_Django_Node.js_Heroku_Yuglify - Fatal编程技术网

Python Heroku部署,Yuglify没有使用Django管道的此类文件

Python Heroku部署,Yuglify没有使用Django管道的此类文件,python,django,node.js,heroku,yuglify,Python,Django,Node.js,Heroku,Yuglify,尝试在deloyment上运行collectstatic,但遇到以下错误: pipeline.exceptions.CompressorError:/usr/bin/env:yuglify:没有这样的 文件或目录 手动运行collectstatic时,一切正常: 后处理“样式表/omnibase-v1.css”作为 'stylesheets/omnibase-v1.css'后处理'js/omnijs-v1.js'为 “js/omnijs-v1.js” 我已经在全球安装了Yuglify。如果我运行

尝试在deloyment上运行collectstatic,但遇到以下错误:

pipeline.exceptions.CompressorError:/usr/bin/env:yuglify:没有这样的 文件或目录

手动运行collectstatic时,一切正常:

后处理“样式表/omnibase-v1.css”作为 'stylesheets/omnibase-v1.css'后处理'js/omnijs-v1.js'为 “js/omnijs-v1.js”

我已经在全球安装了Yuglify。如果我运行“heroku run yuglify”,界面会弹出并按预期运行。我只是遇到了一个部署问题。我正在使用multibuildpack,以及NodeJS和Python。有什么帮助吗

我的包裹,以防万一:

{
  "author": "One Who Sighs",
  "name": "sadasd",
  "description": "sadasd Dependencies",
  "version": "0.0.0",
  "homepage": "http://sxaxsaca.herokuapp.com/",
  "repository": {
    "url": "https://github.com/heroku/heroku-buildpack-nodejs"
  },
  "dependencies": {
    "yuglify": "~0.1.4"
  },
  "engines": {
    "node": "0.10.x"
  }
}

应该提到的是,Yuglify不在my requirements.txt中,而在my package.json中。

我遇到了同样的问题,最终使用了这样一个自定义构建包,并编写了一个bash脚本来安装node和Yuglify:

在设置buildpack之后,我创建了一些bash脚本来安装node和yuglify。buildpack有钩子来调用这些编译后脚本。下面是一个很好的示例,我遵循了这个示例:

这些脚本放在根文件夹的bin下

在post_编译脚本中,我添加了一个脚本来安装yuglify

后期编译脚本

if [ -f bin/install_nodejs ]; then
    echo "-----> Running install_nodejs"
    chmod +x bin/install_nodejs
    bin/install_nodejs


    if [ -f bin/install_yuglify ]; then
        echo "-----> Running install_yuglify"
        chmod +x bin/install_yuglify
        bin/install_yuglify
    fi

fi
  #!/usr/bin/env bash
    set -eo pipefail

    npm install -g yuglify
安装yuglify脚本

if [ -f bin/install_nodejs ]; then
    echo "-----> Running install_nodejs"
    chmod +x bin/install_nodejs
    bin/install_nodejs


    if [ -f bin/install_yuglify ]; then
        echo "-----> Running install_yuglify"
        chmod +x bin/install_yuglify
        bin/install_yuglify
    fi

fi
  #!/usr/bin/env bash
    set -eo pipefail

    npm install -g yuglify
如果这不起作用,你可以看看这篇文章:

您最好使用多构建包并在
package.json
中添加nodejs依赖项。