cannot run helloworld in Google app engine launcher - google-app-engine

Google App Engine Launcher suddenly not working when running any app, it works well yesterday.
Error produced:
wi2013-01-15 14:56:52 Running command: "['C:\\Python27\\pythonw.exe', 'C:\\Program Files (x86)\\Google\\google_appengine\\dev_appserver.py', '--admin_console_server=', '--port=8080', 'C:\\Users\\Lawrence\\Documents\\guestbook-2']"
Traceback (most recent call last):
File "C:\Program Files (x86)\Google\google_appengine\dev_appserver.py", line 171, in <module>
run_file(__file__, globals())
File "C:\Program Files (x86)\Google\google_appengine\dev_appserver.py", line 167, in run_file
execfile(script_path, globals_)
File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\dev_appserver_main.py", line 166, in <module>
from google.appengine.tools import appcfg
File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\appcfg.py", line 41, in <module>
import mimetypes
File "C:\Python27\Lib\mimetypes.py", line 29, in <module>
import urllib
File "C:\Python27\Lib\urllib.py", line 26, in <module>
import socket
File "C:\Python27\Lib\socket.py", line 47, in <module>
import _socket
ImportError: Module use of python25.dll conflict with this version of Python.
2013-01-15 14:56:52 (Process exited with code 1)
When you google this error, a lot of solution telling you to change the
System/ User Environment Variable to add C:\Python27;C:\Python27\Scripts; C:\Python27\Lib; C:\Python27\libs; etc, remove or add User Variable etc. All those trick not work for me.
I didn't install python25. Those programme refer to it and using import _socket are google app engine launcher itself or Google Drive, I have stopped my Google Drive already as people found this may cause problem. so I guess this GAE conflicted itself when some error happen inside it. The clue is I got another error in google app launcher log,C:\Program Files (x86)\Google\google_appengine\launcher\GoogleAppEngineLauncher.exe.log
I'm using win 7 64 bits, GAE 1.7.4, Python 2.7.3

You need to edit app.yaml
you should have:
runtime: python
replace with:
runtime: python27
threadsafe: true
Pay attention to threadsafe:
https://developers.google.com/appengine/docs/python/python25/migrate27#threadsafe
Other setting of app.yaml
https://developers.google.com/appengine/docs/python/config/appconfig#Required_Elements
If you start from Python 2.5 please read:
https:// developers.google.com/appengine/docs/python/python25/migrate27#appyaml

Related

ImportError: No module named _ctypes running Python Flask tutorial for Google App Engine on Windows

I'm just trying to run the simple hello world app on their tutorials page. I used to use Google App Engine frequently, but now I can't seem to get it going at all. I'm on win 10 x64. Downloaded latest google cloud sdk, and python version 2.7.13
> ERROR 2017-01-07 15:25:21,219 wsgi.py:263] Traceback (most recent
> call last): File "C:\Program Files (x86)\Google\Cloud
> SDK\google-cloud-sdk\platform\google_appengine\google\appengine\runtime\wsgi.py",
> line 240, in Handle
> handler = _config_handle.add_wsgi_middleware(self._LoadHandler()) File "C:\Program Files (x86)\Google\Cloud
> SDK\google-cloud-sdk\platform\google_appengine\google\appengine\runtime\wsgi.py",
> line 299, in _LoadHandler
> handler, path, err = LoadObject(self._handler) File "C:\Program Files (x86)\Google\Cloud
> SDK\google-cloud-sdk\platform\google_appengine\google\appengine\runtime\wsgi.py",
> line 85, in LoadObject
> obj = __import__(path[0]) File "C:\....\python-docs-samples\appengine\standard\flask\hello_world\main.py",
> line 18, in <module>
> from flask import Flask File "C:\....\python-docs-samples\appengine\standard\flask\hello_world\lib\flask\__init__.py",
> line 21, in <module>
> from .app import Flask, Request, Response File "C:\....\python-docs-samples\appengine\standard\flask\hello_world\lib\flask\app.py",
> line 27, in <module>
> from . import json, cli File "C:\....\python-docs-samples\appengine\standard\flask\hello_world\lib\flask\cli.py",
> line 17, in <module>
> import click File "C:\....\python-docs-samples\appengine\standard\flask\hello_world\lib\click\__init__.py",
> line 18, in <module> INFO 2017-01-07 10:25:21,229 module.py:806]
> default: "GET / HTTP/1.1" 500 -
> from .core import Context, BaseCommand, Command, MultiCommand, Group, \ File
> "C:\....\python-docs-samples\appengine\standard\flask\hello_world\lib\click\core.py", line 8, in <module>
> from .types import convert_type, IntRange, BOOL File "C:\....\python-docs-samples\appengine\standard\flask\hello_world\lib\click\types.py",
> line 4, in <module>
> from ._compat import open_stream, text_type, filename_to_ui, \ File
> "C:\....\python-docs-samples\appengine\standard\flask\hello_world\lib\click\_compat.py",
> line 536, in <module>
> from ._winconsole import _get_windows_console_stream File "C:\....\python-docs-samples\appengine\standard\flask\hello_world\lib\click\_winconsole.py",
> line 16, in <module>
> import ctypes File "C:\Python27\lib\ctypes\__init__.py", line 7, in <module>
> from _ctypes import Union, Structure, Array File "C:\Program Files (x86)\Google\Cloud
> SDK\google-cloud-sdk\platform\google_appengine\google\appengine\tools\devappserver2\python\sandbox.py",
> line 964, in load_module
> raise ImportError('No module named %s' % fullname)
ImportError: No module named _ctypes
Google's sample Flask "Hello World" application requires Flask 0.11.1.
This library is not vendored by Google, so developers are required to install it via pip
This sample shows how to use Flask with Google App Engine Standard.
Before running or deploying this application, install the dependencies
using pip:
pip install -t lib -r requirements.txt
Flask's setup.py instructs pip to install the click library, at a release later than or equal to version 2.0.
install_requires=[
'Werkzeug>=0.7',
'Jinja2>=2.4',
'itsdangerous>=0.21',
'click>=2.0',
],
In November 2015 a change was committed to click to improve support for unicode in the windows console. This change added the import of the ctypes library which Appengine is choking on, because the Appengine sandbox does not allow importing ctypes.
The workaround for this is to overwrite the installed click with an earlier version (5.1 looks like the most recent candidate):
pip install --target lib --upgrade click==5.1
For me, the workaround mentioned here Google's issue tracker worked
goto [sdk_home]\google\appengine\tools\devappserver2\python\sandbox.py
find the definition of _WHITE_LIST_C_MODULES = [xxx]
add following two lines to the list:
'_winreg',
'_ctypes',
try your app again.
The issue was marked fixed on 7/7/2017.

AppEngine: ImportError: cannot import name docker

I have recently updated my environment using gcloud component update. I am now having the following issue:
xxxxxx-MacBook-Air:~ poiuytrez$ dev_appserver.py .
Traceback (most recent call last):
File "/usr/local/bin/dev_appserver.py", line 83, in <module>
_run_file(__file__, globals())
File "/usr/local/bin/dev_appserver.py", line 79, in _run_file
execfile(_PATHS.script_file(script_name), globals_)
File "/Applications/Miscelaneous/google-cloud-sdk/.install/.backup/platform/google_appengine/google/appengine/tools/devappserver2/devappserver2.py", line 36, in <module>
from google.appengine.tools.devappserver2 import dispatcher
File "/Applications/Miscelaneous/google-cloud-sdk/.install/.backup/platform/google_appengine/google/appengine/tools/devappserver2/dispatcher.py", line 29, in <module>
from google.appengine.tools.devappserver2 import module
File "/Applications/Miscelaneous/google-cloud-sdk/.install/.backup/platform/google_appengine/google/appengine/tools/devappserver2/module.py", line 75, in <module>
from google.appengine.tools.devappserver2 import vm_runtime_factory
File "/Applications/Miscelaneous/google-cloud-sdk/.install/.backup/platform/google_appengine/google/appengine/tools/devappserver2/vm_runtime_factory.py", line 25, in <module>
from google.appengine.tools.devappserver2 import vm_runtime_proxy
File "/Applications/Miscelaneous/google-cloud-sdk/.install/.backup/platform/google_appengine/google/appengine/tools/devappserver2/vm_runtime_proxy.py", line 29, in <module>
from google.appengine.tools.devappserver2 import log_manager
File "/Applications/Miscelaneous/google-cloud-sdk/.install/.backup/platform/google_appengine/google/appengine/tools/devappserver2/log_manager.py", line 34, in <module>
from google.appengine.tools.docker import containers
File "/Applications/Miscelaneous/google-cloud-sdk/.install/.backup/platform/google_appengine/google/appengine/tools/docker/containers.py", line 48, in <module>
from docker import docker
ImportError: cannot import name docker
I am not sure what to do.
As per Google Cloud SDK - Release Notes for 0.9.68 (2015/07/08)
The standalone App Engine SDKs are no longer distributed through the Cloud SDK.
App Engine functionality can still be used through the gcloud preview app command group.
The gae-java, gae-python, gae-php, and gae-go components no longer exist in the component manager.
If you need to use appcfg or dev_appserver directly, these are still
available in the App Engine SDK downloads that can be found here:
https://cloud.google.com/appengine/downloads
So your options are:
Run gcloud preview app run app.yaml from your project's home directory
Install the Google App Engine SDK for python and use its bundled dev_appserver
Install docker-py to "fix" it.
More info in this bug report

Google App Engine Deploy AttributeError expat_CAPI

I have been using Google App Engine Launcher many times and it worked perfect but recently I used it and I had this Error:
2014-01-02 18:50:58 Running command: "[u'C:\\Python27\\python.exe', '-u', u'C:\\Program Files (x86)\\Google\\google_appengine\\appcfg.py', '--no_cookies', u'--email=[my email]', '--passin', 'update', u'D:\\temp\\my-aiesec']"
Traceback (most recent call last):
File "C:\Program Files (x86)\Google\google_appengine\appcfg.py", line 196, in <module>
run_file(__file__, globals())
File "C:\Program Files (x86)\Google\google_appengine\appcfg.py", line 192, in run_file
execfile(script_path, globals_)
File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\appcfg.py", line 81, in <module>
from google.appengine.tools import bulkloader
File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\bulkloader.py", line 128, in <module>
from google.appengine.ext.bulkload import bulkloader_config
File "C:\Program Files (x86)\Google\google_appengine\google\appengine\ext\bulkload\bulkloader_config.py", line 47, in <module>
from google.appengine.ext.bulkload import simplexml_connector
File "C:\Program Files (x86)\Google\google_appengine\google\appengine\ext\bulkload\simplexml_connector.py", line 40, in <module>
from xml.etree import cElementTree as ElementTree
File "C:\Python27\Lib\xml\etree\cElementTree.py", line 3, in <module>
from _elementtree import *
AttributeError: 'module' object has no attribute 'expat_CAPI'
2014-01-02 18:50:59 (Process exited with code 1)
You can close this window now.
1- First I thought the version of my GAE is out dated. so I upgrade to newest version 1.8.8.
2- I set the python 2.7 path in preferences.
3- I created a new project and launched it locally and it worked.
But still I had this deploying problem.
Previously I defined PYTHONPATH in the Environment Variables (System Variables) of my windows. I removed that Variable and Google App Engine worked again.

Fatal devappserver2 error: PYTHON_EGG_CACHE in Appengine 1.7.6 and 1.7.5 python 2.7, win7

I attempted to use Appengine SDK version 1.7.6 but was receiving fatal errors (same as outlined below) so reverted to 1.7.5, where my app works fine. However, the errors I saw in 1.7.6 recur when I attempt to run the experimental devappserver in 1.7.5. I am running Python 2.7 on a win 7 machine. Standard install selections for AppEngine.
These error messages refer to permissions relating to the PYTHON_EGG_CACHE, but...
- 1) They do not occur for the 'old' dev_appserver
- 2) The application can successfully extract files to the location noted. In fact, I changed the path of the PYTHON_EGG_CACHE to another location, gave it wide open permissions, and still received the error.
- 3) I have pyyaml in my site-packages, so am not sure why it would need to do a temporary extract anyway.
Any help looking for a resolution to this would be appreciated, since I'll be forced to use the new devappserver in a couple of releases time.
Command line error dump below:
python "C:\Program Files (x
86)\Google\google_appengine\devappserver2.py" .
WARNING 2013-03-25 19:10:41,029 devappserver2.py:497] devappserver2.py is curre
ntly experimental but will eventually replace dev_appserver.py in the App Engine
Python SDK. For more information and to report bugs, please see: http://code.go
ogle.com/p/appengine-devappserver2-experiment/
INFO 2013-03-25 19:10:41,171 appcfg.py:618] Checking for updates to the SDK.
WARNING 2013-03-25 19:10:44,525 simple_search_stub.py:975] Could not read searc
h indexes from c:\users\ben\appdata\local\temp\appengine.dev~upskillme-main.Ben\
search_indexes
INFO 2013-03-25 19:10:44,539 api_server.py:148] Starting API server at: http
://localhost:49302
INFO 2013-03-25 19:10:44,555 dispatcher.py:96] Starting server "default" run
ning at: http://localhost:8080
INFO 2013-03-25 19:10:44,571 admin_server.py:112] Starting admin server at:
http://localhost:8000
Traceback (most recent call last):
File "C:\Program Files (x86)\Google\google_appengine\_python_runtime.py", line
150, in <module>
run_file(__file__, globals())
File "C:\Program Files (x86)\Google\google_appengine\_python_runtime.py", line
146, in run_file
execfile(script_path, globals_)
File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\de
vappserver2\python\runtime.py", line 39, in <module>
from google.appengine.ext.remote_api import remote_api_stub
File "C:\Program Files (x86)\Google\google_appengine\google\appengine\ext\remo
te_api\remote_api_stub.py", line 75, in <module>
import yaml
File "C:\Program Files (x86)\Google\google_appengine\lib\yaml-3.10\yaml\__init
__.py", line 14, in <module>
from cyaml import *
File "C:\Program Files (x86)\Google\google_appengine\lib\yaml-3.10\yaml\cyaml.
py", line 5, in <module>
from _yaml import CParser, CEmitter
File "C:\Python27\lib\site-packages\pyyaml-3.10-py2.7-win32.egg\_yaml.py", lin
e 7, in <module>
File "C:\Python27\lib\site-packages\pyyaml-3.10-py2.7-win32.egg\_yaml.py", lin
e 4, in __bootstrap__
File "C:\Python27\lib\site-packages\pkg_resources.py", line 882, in resource_f
ilename
self, resource_name
File "C:\Python27\lib\site-packages\pkg_resources.py", line 1351, in get_resou
rce_filename
self._extract_resource(manager, self._eager_to_zip(name))
File "C:\Python27\lib\site-packages\pkg_resources.py", line 1406, in _extract_
resource
manager.extraction_error() # report a user-friendly error
File "C:\Python27\lib\site-packages\pkg_resources.py", line 928, in extraction
_error
raise err
pkg_resources.ExtractionError: Can't extract file(s) to egg cache
The following error occurred while trying to extract file(s) to the Python egg
cache:
[Error 5] Access is denied: 'C:\\Users\\Ben\\AppData\\Roaming\\Python-Eggs\\py
yaml-3.10-py2.7-win32.egg-tmp\\_yaml.pyd'
The Python egg cache directory is currently set to:
C:\Users\Ben\AppData\Roaming\Python-Eggs
Perhaps your account does not have write access to this directory? You can
change the cache directory by setting the PYTHON_EGG_CACHE environment
variable to point to an accessible directory.
Exception in thread Thread-4:
Traceback (most recent call last):
File "C:\Python27\lib\threading.py", line 551, in __bootstrap_inner
self.run()
File "C:\Python27\lib\threading.py", line 504, in run
self.__target(*self.__args, **self.__kwargs)
File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\de
vappserver2\server.py", line 1045, in _loop_adjusting_instances
self._adjust_instances()
If anyone comes along with the same issue, the resolution that worked for me was as follows:
Unzip the PyYAML-3.10-py2.7-win32.egg in your python27 site-packages
directory into a new directory within site-packages. You'll need to
unzip it to into a directory name like NEWPyYAML-3.10-py2.7-win32.egg
to avoid name conflicts.
Rename your original egg. to something else (e.g., OLDPyYAML-3.10-py2.7-win32.egg).
Rename your new directory to PyYAML-3.10-py2.7-win32.egg
All references to the egg will now actually point to a directory in your site-packages containing the unzipped python files. The new devappserver should be able to work with this.
Unsure how to unzip an egg in windows? See here (presuming you have Winzip or similar installed):
http://mail.python.org/pipermail/chicago/2007-July/002301.html

AppConfigNotFoundError for dev_appserver.py on Django-nonrel and Google App Engine

I'm trying to clear my local db like explained in the docs
But when I try and run the dev_appserver.py --clear_datastore command I get google.appengine.tools.dev_appserver.AppConfigNotFoundError
dev_appserver.py --clear_datastore dennys
Traceback (most recent call last):
File "/usr/local/bin/dev_appserver.py", line 76, in <module>
run_file(__file__, globals())
File "/usr/local/bin/dev_appserver.py", line 72, in run_file
execfile(script_path, globals_)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver_main.py", line 687, in <module>
sys.exit(main(sys.argv))
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver_main.py", line 575, in main
appinfo, matcher = dev_appserver.LoadAppConfig(root_path, {})
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver.py", line 4359, in LoadAppConfig
raise AppConfigNotFoundError
google.appengine.tools.dev_appserver.AppConfigNotFoundError
You have to specify the directory of your application in the command line to dev_appserver.py.
I solved this problem by going to:
Run --> Debug Configurations --> (right click) PyDev Google App Run --> New
Type the project name under "Project".
Then click on "Arguments" and put the path location of where your app.yaml file is. The picture below describes what I'm talking about:
You are missing the boolean yes value as stated in the docs:
dev_appserver.py --clear_datastore=yes myapp

Resources