我的setup.cfg:
[metadata]
name = dummy_job
description = Dummy Job library
long_description = file: README.md
url = https://github.com/mememe/jobs/dummy_job
classifiers =
Programming Language :: Python :: 3.6
[options]
zip_safe = False
packages = find:
python_requires = >=3.6
scripts =
app/entry_point/dummy_job.py
../../utils/spark_utils.py
[options.packages.find]
exclude =
tests*
[tool:pytest]
addopts =
-rA --verbose --color=yes --showlocals --durations=10 --doctest-modules
--cov=predictive_services_vectorization --cov-report=term
[tool:pylint]
disable = C1801,too-few-public-methods,too-many-arguments
max-line-length = 120
good-names = i,j,k,f,df,_,X,X_out,X_list,x,y
output-format = colorized
我的项目结构是:
- 项目
- 工作
- dummy_job
- 应用
- entry_point
- __初始化__。py
- dummy_job.py
- 包括
- __初始化__。py
- dummy_class.py
- 测试
- entry_point
- __初始化__。py
- test_dummy_job.py
- 包括
- __初始化__。py
- test_dummy_class.py
- __初始化__。py
- __初始化__。py
- setup.cfg
- Pipfile
- Pipfile.lock
- setup.py
- 实用程序
- __初始化__。py
- spark_utils.py
问题是当我使用命令生成车轮时:
VERSION =测试pipenv运行python setup.py bdist_wheel
它产生带有文件夹结构的以下轮子:
- 应用
- entry_point
- __初始化__。py
- dummy_job.py
- 包括
- __初始化__。py
- dummy_class.py
- 测试
- entry_point
- __初始化__。py
- test_dummy_job.py
- 包括
- __初始化__。py
- test_dummy_class.py
- __初始化__。py
- __初始化__。py
- dummy_job-test.data
- 脚本
- dummy_jobs.py
- spark_utils.py
- dummy_job-test.dist-info
- 元数据
- 记录
- top_level.txt
- 车轮
但是问题是在我的课上我有代码:
from utils.spark_utils import get_spark_logger, get_spark_session, get_glue_context
from include.dummy_class import DummyClass
spark = get_spark_session()
rdd = get_glue_context().parrallelize([1, 2, 3, 4])
data = rdd.collect()
logger = get_spark_logger()
dummy_class = DummyClass(1)
logger.info("The list from the rdd is : {}".format(data))
但是问题在于,查看方向盘将无法正常工作,因为没有名为include的模块。正确的导入应该是:
form app.include.dummy_class import DummyClass
将项目文件夹保持原样对我来说很重要。 可以更改setup.cfg,以便生成可用于我的项目的轮子吗?我该怎么办?