bin totaler Noob in Sachen Python. Ich habe ein Script von https://github.com/brownan/Minecraft-Overviewer/
Dort sind einige Dateien fehlerhaft, zB. die util.py . Die Datei sieht bei mit aktuell so aus:
Code: Alles auswählen
# This file is part of the Minecraft Overviewer.
#
# Minecraft Overviewer is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as published
# by the Free Software Foundation, either version 3 of the License, or (at
# your option) any later version.
#
# Minecraft Overviewer is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
# Public License for more details.
#
# You should have received a copy of the GNU General Public License along
# with the Overviewer. If not, see <http://www.gnu.org/licenses/>.
"""
Misc utility routines used by multiple files that don't belong anywhere else
"""
import imp
import os
import os.path
import sys
from subprocess import Popen, PIPE
def get_program_path():
if hasattr(sys, "frozen") or imp.is_frozen("__main__"):
return os.path.dirname(sys.executable)
else:
try:
# normally, we're in ./overviewer_core/util.py
# we want ./
return os.path.dirname(os.path.dirname(__file__))
except NameError:
return os.path.dirname(sys.argv[0])
# does not require git, very likely to work everywhere
def findGitHash():
this_dir = get_program_path()
if os.path.exists(os.path.join(this_dir,".git")):
with_ = open(os.path.join(this_dir,".git","HEAD"))
data_ = with_.read().strip()
if data_.startswith("ref: "):
if not os.path.exists(os.path.join(this_dir, ".git", data[5:])):
return data
with_ = open(os.path.join(this_dir, ".git", data[5:]))
return with_.read().strip()
else:
return data
else:
try:
import overviewer_version
return overviewer_version.HASH
except:
return "unknown"
def findGitVersion():
try:
p = Popen(['git', 'describe', '--tags'], stdout=PIPE, stderr=PIPE)
p.stderr.close()
line = p.stdout.readlines()[0]
if line.startswith('release-'):
line = line.split('-', 1)[1]
# turn 0.1.2-50-somehash into 0.1.2-50
# and 0.1.3 into 0.1.3
line = '-'.join(line.split('-', 2)[:2])
return line.strip()
except:
try:
import overviewer_version
return overviewer_version.VERSION
except:
return "unknown"
Code: Alles auswählen
# python setup.py build
Traceback (most recent call last):
File "setup.py", line 120, in <module>
setup_kwargs['package_data'] = {'overviewer_core': recursive_package_data('data/textures') + recursive_package_data('data/web_assets')}
File "setup.py", line 83, in recursive_package_data
current_path = os.path.relpath(dirpath, package_dir)
AttributeError: 'module' object has no attribute 'relpath'
zB.:
Code: Alles auswählen
# python overviewer.py
overviewer.py:69: Warning: 'with' will become a reserved keyword in Python 2.6
File "overviewer.py", line 69
with open(os.path.join(this_dir, "overviewer_core", "src", "overviewer.h")) as f:
^
SyntaxError: invalid syntax
Mit freundlichen Grüßen,
Patrick Werner