私はPythonモジュールを単一のeggファイルとして配布する方法を研究しています。私がmy_module
と呼ばれるPythonモジュールを持っていて、私のモジュール用のeggファイルを生成するpythonスクリプトを書こうとしています。だから私はsetuptools
を見つけた。eggファイルを作成してPythonでロードするにはどうすればよいですか?
from setuptools import setup
setup(
name="my_module",
packages=[my_package],
version="1.0",
)
そして、私は、これらの問題に関するいくつかの欠点を持っていたが:
- このスクリプトは、
python setup.py install
として実行する必要があります。つまり、コマンドライン引数を指定する必要があります。その代わりに私は自分のeggfileをPythonコードの間に自動的に生成したいと思っています。それはコマンドライン引数を独自に制御しています。 - 結果ファイルは、セットアップのファイルディレクトリに出力されます。私は、スクリプトの出力ディレクトリのパスを制御したいと思います。
- 私が実際に必要としない
build
とdist
フォルダを作成します。おそらく、私はsetup
を呼び出した後にフォルダを削除して解決することができます。
setuptools
は、上記の問題をどのように扱うべきですか?
また、指定されたeggファイルからモジュールをロードするにはどうすればよいですか?私は、次のモジュール持っていると仮定すると
:私はcreage_egg.py
を実行したとき、私は、このようなエラーを取得し
# create_egg.py
from setuptools import setup
setup(
name="my_module",
packages=['my_module'],
version="1.0",
)
:
# my_module.py
class MyClass:
def __init__(self):
self._x = None
def set_x(self, x):
self._x = x
def get_x(self):
return self._x
を私は卵のファイルを作成するには、このスクリプトを書いた
$ python3 create_egg.py
usage: create_egg.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
or: create_egg.py --help [cmd1 cmd2 ...]
or: create_egg.py --help-commands
or: create_egg.py cmd --help
error: no commands supplied
は、これは細かい質問ですが、このサイトのビット「広すぎます」。あなたが問題を切り出して、あなたが望むものを実装しようとしている間に特定の問題について質問すれば、より良い答えが得られます。 –
@PauloScardineアドバイスをいただきありがとうございます。私はしばらくの間質問を修正します。 – Fomalhaut