#python #metadata #jsonschema #python-importlib #python-jsonschema
#python #метаданные #jsonschema #python-importlib #python-jsonschema
Вопрос:
Я довольно новичок в этом. Я установил jsonschema
и importlib_metadata
вручную и скопировал его в папку, в которой я synthesis
использовал make syn
, т.Е. vlsi
Папку в моем случае.
Он завершается с этой ошибкой: importlib_metadata.PackageNotFoundError: No package metadata was found for jsonschema
[usr@serv vlsi]$ make syn
./example-vlsi -e /home/usr/chipyard/vlsi/env.yml -p example.yml -p /home/usr/chipyard/vlsi/build/chipyard.TestHarness.RocketConfig-ChipTop/inputs.yml --obj_dir /home/usr/chipyard/vlsi/build/chipyard.TestHarness.RocketConfig-ChipTop build
Traceback (most recent call last):
File "./example-vlsi", line 4, in <module>
import hammer_vlsi
File "/home/usr/chipyard/vlsi/hammer_vlsi/__init__.py", line 15, in <module>
from .hammer_vlsi_impl import *
File "/home/usr/chipyard/vlsi/hammer_vlsi/hammer_vlsi_impl.py", line 22, in <module>
from hammer_tech import Library, ExtraLibrary
File "/home/usr/chipyard/vlsi/hammer_tech.py", line 18, in <module>
import python_jsonschema_objects # type: ignore
File "/home/usr/chipyard/vlsi/python_jsonschema_objects/__init__.py", line 1, in <module>
import jsonschema
File "/home/usr/chipyard/vlsi/jsonschema/__init__.py", line 34, in <module>
__version__ = metadata.version("jsonschema")
File "/home/usr/chipyard/vlsi/importlib_metadata/__init__.py", line 585, in version
return distribution(distribution_name).version
File "/home/usr/chipyard/vlsi/importlib_metadata/__init__.py", line 558, in distribution
return Distribution.from_name(distribution_name)
File "/home/usr/chipyard/vlsi/importlib_metadata/__init__.py", line 215, in from_name
raise PackageNotFoundError(name)
importlib_metadata.PackageNotFoundError: No package metadata was found for jsonschema
make: *** No rule to make target 'syn'. Stop.
Я нашел несколько решений для этого здесь: http://biercoff.com/how-to-fix-package-not-found-error-importlib-metadata / но где найти бессерверный файл.yml и повлияет ли превращение slim
true в false на другие вещи?
Есть идеи, что может быть причиной этой ошибки?
Комментарии:
1. после установки плагина serverless-python-requirements serverless.yml появится serverless plugin install -n serverless-python-requirements, затем в пользовательском разделе добавьте пользовательские: pythonRequirements: dockerizePip: true zip: true slim: true
Ответ №1:
Это проблема с опцией slim. Даже отключение не помогло. Однако у этой ошибки есть обходной путь.
pythonRequirements:
dockerizePip: non-linux
useDownloadCache: false
useStaticCache: false
slim: true
slimPatternsAppendDefaults: false
slimPatterns:
- '**/*.py[c|o]'
- '**/__pycache__*'