简体   繁体   中英

Heroku push rejected, failed to compile Python/django app (Python 2.7)

I'm doing the Heroku walkthrough: https://devcenter.heroku.com/articles/django#prerequisites for python developers, and I get an error when trying to run "git push heroku master", which can be found under the "Deploy to Heroku" section about 1/3 of the way down the page. I get the following traceback:

Counting objects: 11, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (9/9), done.
Writing objects: 100% (11/11), 3.71 KiB, done.
Total 11 (delta 0), reused 0 (delta 0)
-----> Python/Django app detected
-----> Preparing Python interpreter (2.7.2)
-----> Creating Virtualenv (1.8.4)
       Also creating executable in .heroku/venv/bin/python
       Installing distribute...done.
       Installing pip...done.
       Running virtualenv with interpreter /usr/local/bin/python2.7
-----> Installing dependencies using pip (1.1)
       Exception:
       Traceback (most recent call last):
         File "/tmp/build_21leaqqhryfxe/.heroku/venv/lib/python2.7/site-packages/pip-1.1-py2.7.egg/pip/basecommand.py",
line 104, in main
           status = self.run(options, args)
         File "/tmp/build_21leaqqhryfxe/.heroku/venv/lib/python2.7/site-packages/pip-1.1-py2.7.egg/pip/commands/install.
py", line 219, in run
           for req in parse_requirements(filename, finder=finder, options=options):
         File "/tmp/build_21leaqqhryfxe/.heroku/venv/lib/python2.7/site-packages/pip-1.1-py2.7.egg/pip/req.py", line 128
8, in parse_requirements
           req = InstallRequirement.from_line(line, comes_from)
         File "/tmp/build_21leaqqhryfxe/.heroku/venv/lib/python2.7/site-packages/pip-1.1-py2.7.egg/pip/req.py", line 85,
 in from_line
           elif os.path.isdir(path) and (os.path.sep in name or name.startswith('.')):
         File "/tmp/build_21leaqqhryfxe/.heroku/venv/lib/python2.7/genericpath.py", line 41, in isdir
           st = os.stat(s)
       TypeError: must be encoded string without NULL bytes, not str

       Storing complete log in /app/.pip/pip.log
 !     Heroku push rejected, failed to compile Python/django app

To git@heroku.com:stark-fortress-9694.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git@heroku.com:stark-fortress-9694.git'

Everything else had worked successfully to this point. Any insight? I'm completely new to this. Thanks for any help in advance.

Here is what requirements.txt looks like:

Django==1.4.3
distribute==0.6.31
dj-database-url==0.2.1
psycopg2==2.4.5

I think the problem is in the encoding of your requirements.txt file. Probably, you unknowingly saved it in Unicode format. You should save it in ANSI format. See this link for more details: http://georgik.sinusgear.com/2012/08/20/problems-with-deploying-heroku-django-app-from-windows/

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM