可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
Doing the heroku python demo and having problems with Procfile. I have it in the right directory (alongside requirements.txt, venv/, and app.py) and the file is "Procfile" without .txt extension (as other questions suggest).
Contents of Procfile are:
web: python app.py
Nonetheless, I keep getting the "Procfile does not exist" error when running "foreman start." At my wits end, any suggestions would be appreciated.
Cheers,
Thain
EDIT: Retried creating "Procfile" using echo command rather than an editor -
echo "web: python app.py" > Procfile
worked after that, thanks.
回答1:
Just adding an answer so that this can be closed (or moved from the unanswered questions section).
As noted in the comments, try using the echo
command to create the file rather than an editor. I suspect that this is because of a newline char added by most editors that heroku is having a difficult time with.
Example solution (from qn):
echo "web: python app.py" > Procfile
回答2:
The problem is most likely an extension issue. For example, in Windows, a file saved in notepad has a .txt
extension by default. However, when you echo it into a file, the file is saved with the right name, in this case: Procfile
.
I'm writing this because someone I know had the same problem and this may help others having the same issue.
回答3:
After spending a significant amount of time on this.. I thought it was important to share..
In the root of your directory =>
touch Procfile
git add
git commit
git push
make sure your Procfile on github is "Procfile" not "procfile"
git push heroku master
It must be the proper case both locally and on github in order for heroku to recognize it.
回答4:
delete the .git file from the folder, and try adding your files to git again using the following commands-
git init
git add .
git commit -m "Procfile issue resolved"
heroku git:remote --app yourappname
git push heroku master
heroku open
hope this helps....
回答5:
I had the same problem but in laravel. As stated above, some text editors e.g Notepad will add the .txt extension by default if you do not specify the file extension.
Therefore you will have Procfile.txt file instead of Procfile file which Heroku will not detect
To avoid this extension addition, use Sublime text editordownload sublime free it will save it without the .txt extension
回答6:
The easiest way to create a procfile, (without using the IDE and running into problems with the file extension), is to run this code in your terminal.
touch procfile
If you look up "touch", it's actually meant to simply update the timestamp of an existing file, but a handy by-product, is that it CREATES a file, if there isn't one there in the first place.