我有一个问题,我想在Ubuntu上使用python 2.7中的setuptools打包一个学习目的的应用程序。我成功地能够创建轮(.whl)文件。我把它上传到pypi并尝试下载并安装到其他Ubuntu系统中,它安装得很好。但我不知道如何使用已安装的轮组件。任何人都可以用简单的方式指导我这个过程吗?我厌倦了在网络上查看这些信息并且还没有发现任何有用的信息。请帮忙。
这是简单的结构
指南(XYZ)
XYZ / index.py
XYZ / setup.py
print "hello from index"
from setuptools import setup
setup
( name='vivek',
version='0.1',
description='The test upload',
author='TEST',
scripts=["index.py",],
author_email='flyingcircus@example.com',
zip_safe=False)
应用命令 sudo python setup.py bdist_wheel 在XYZ目录中生成这些 -
build (directory) , dist (directory) , index.py , index.py~ , setup.py , setup.py~ , vivek.egg-info (directory)
在 dist 目录中,我将上传到pypi-的滚轮文件 的的Vivek-0.1-PY2-NONE-any.whl
现在我的问题是如何在其他系统上安装此轮文件( sudo pip install vivek )?如果我尝试在其他模块中导入它,它会说"找不到模块vivek"。 如果我只是输入' vivek'在终端上它说"没有命令vivek找到"。解决这个问题的方法是什么?请帮忙。在此先感谢:)
答案 0 :(得分:0)
我弄明白了如何让它发挥作用。如果有人在这里得到这个问题是我如何解决它 -
我在 XYZ 目录中创建了另一个名为 project 的目录,在项目目录中我创建了一个空白文件 __ init __。py ,我也移动了索引.py进入项目目录。我将setup.py留在XYZ目录中。 所以现在结构是这样的 -
XYZ /项目/的 index.py 强>
XYZ /项目/ <强> __初始化__。PY 强>
def fun():
print "hello from vivek fun"
setup.py 中的from setuptools import setup
setup(
name = "vivek",
version = 1.0,
packages = ["project"],
scripts = ["project/index.py",],
)
然后将其打包到wheel文件中我从XYZ目录执行相同的过程( sudo python setup.py bdist_wheel )并像往常一样生成轮文件 我上传到pypi和另一个系统的 vivek-1.0-py2-none-any.whl ,我使用 sudo pip install vivek 下载并安装了其他系统上的软件包系统
现在测试我写了一个测试文件&#34; test.py &#34; (在其他系统上)
import project.index
project.index.fun()
它有效! :)