2016-07-26 21 views
0

Ich versuche readthedocs in lokalen System (Ubuntu 14.04) in python3 virtuellen env von den Anweisungen in diesem linkFehler bei Hosting ReadTheDocs im Haus Server in python3

gegeben zu installieren Wenn ich lief PIP3 -r Anforderungen installieren. txt, ich habe einen Fehler für Distutils2. Ich habe diese Abhängigkeit entfernt, da distutils2 nicht mehr unterstützt wird und angenommen wird, dass setuptools ausreichen würde.

diesen Befehl python manage.py Migrate Laufen gab den folgenden Fehler:

Traceback (most recent call last): 
    File "manage.py", line 11, in <module> 
    execute_from_command_line(sys.argv) 
    File "/home/username/read_the_docs_env/lib/python3.4/site-packages/django/core/management/__init__.py", line 338, in execute_from_command_line 
    utility.execute() 
    File "/home/username/read_the_docs_env/lib/python3.4/site-packages/django/core/management/__init__.py", line 312, in execute 
    django.setup() 
    File "/home/username/read_the_docs_env/lib/python3.4/site-packages/django/__init__.py", line 18, in setup 
    apps.populate(settings.INSTALLED_APPS) 
    File "/home/username/read_the_docs_env/lib/python3.4/site-packages/django/apps/registry.py", line 115, in populate 
    app_config.ready() 
    File "/home/username/read_the_docs_env/lib/python3.4/site-packages/django/contrib/admin/apps.py", line 22, in ready 
    self.module.autodiscover() 
    File "/home/username/read_the_docs_env/lib/python3.4/site-packages/django/contrib/admin/__init__.py", line 24, in autodiscover 
    autodiscover_modules('admin', register_to=site) 
    File "/home/username/read_the_docs_env/lib/python3.4/site-packages/django/utils/module_loading.py", line 74, in autodiscover_modules 
    import_module('%s.%s' % (app_config.name, module_to_search)) 
    File "/home/username/read_the_docs_env/lib/python3.4/importlib/__init__.py", line 109, in import_module 
    return _bootstrap._gcd_import(name[level:], package, level) 
    File "<frozen importlib._bootstrap>", line 2254, in _gcd_import 
    File "<frozen importlib._bootstrap>", line 2237, in _find_and_load 
    File "<frozen importlib._bootstrap>", line 2226, in _find_and_load_unlocked 
    File "<frozen importlib._bootstrap>", line 1200, in _load_unlocked 
    File "<frozen importlib._bootstrap>", line 1129, in _exec 
    File "<frozen importlib._bootstrap>", line 1471, in exec_module 
    File "<frozen importlib._bootstrap>", line 321, in _call_with_frames_removed 
    File "/home/username/Desktop/CurrentProjects/read_the_docs/checkouts/readthedocs.org/readthedocs/core/admin.py", line 10, in <module> 
    from readthedocs.core.views import SendEmailView 
    File "/home/username/Desktop/CurrentProjects/read_the_docs/checkouts/readthedocs.org/readthedocs/core/views/__init__.py", line 26, in <module> 
    from readthedocs.projects.tasks import remove_dir 
    File "/home/username/Desktop/CurrentProjects/read_the_docs/checkouts/readthedocs.org/readthedocs/projects/tasks.py", line 493 
    print "Sync Versions Exception: %s" % e.message 
            ^
SyntaxError: Missing parentheses in call to 'print' 

ich aus der obigen stacktrace verstehen, dass der Code in python2 ist und so ist print-Anweisung unterscheidet sich in python3.

Bedeutet das, dass ich readthedocs in python2 virtualenv installieren muss?

Können wir die Dokumente von Python3-Projekten nicht im internen Server von Readthedoc hosten?

+0

In Python 3 ist 'print' eine Funktion und muss als eine aufgerufen werden:' print (...) '. –

+0

Wenn Sie ein python2-venv erstellen wollen, müssen Sie dem Interpreter explizit das '-p'-Argument übergeben. –

+0

Ja, das ist das Problem. Es bedeutet, dass der readthedocs Code in python2 ist, weshalb er den Fehler gibt, wenn ich ihn in python3 virtualenv installiere. Die Frage ist, wie wir es in python3 virtualenv installieren. –

Antwort

1

Das Lesen des Dokumentationscodes unterstützt Python 3 noch nicht. Die installation instructions explizit zu verwenden, sagen Python 2.7:

Zuerst erhalten Python 2.7 und virtualenv

Es ist jedoch immer noch möglich sein sollte, Ihre lesen Sie die docs Installation zu verwenden Dokumentation für Python 3 Projekte zu hosten, Da die Anweisungen dann sagen:

Wenn Sie planen, Python 3-Projekt zu Ihrem RTD zu importieren, dann müssen Sie auch Python 3 mit virtualenv in Ihrem System installieren.