0

jediオートコンプリートライブラリで行っている作業のために、toxを使用してテストスイートを実行しようとしていますが、次のようになります。

ValueError: Plugin already registered: /home/aldo/Documents/Projects/jedi/test/conftest.py=<module 'test.conftest' from '/home/aldo/Documents/Projects/jedi/test/conftest.py'>

完全な出力はここにあります:

https://gist.github.com/Astrac/5abdba7db62ac204325e

これはpytestdebug.logです:

https://gist.github.com/Astrac/b5728dfeb22c0d2fb0f5

メイン環境でpipを使用してtoxを実行し、クリーンな仮想環境内で実行してみたところ、同じ結果が得られました。また、(メイン環境と仮想環境の両方から)py.testを直接実行してみましたが、結果は同じでした。

一方、travisで実行されているのを見ることができるので、動作することはわかっています。

https://travis-ci.org/davidhalter/jedi/jobs/5765531

どんな助けでも大歓迎です、ありがとう!

4

2 に答える 2

0

私もこのエラーメッセージを受け取っていました。setup.pyを作ったり使ったりするのはこれが初めてtoxなので、他の人の例を見たのをコピーしようとしてsetup.pyいました。公式のドキュメントがこのトピックについてあまり教えてくれなかったからです。

私の壊れsetup.pyたものは次のように見えました:

from setuptools import setup, find_packages

setup(
    name='foobarbaz',
    version='1.0',
    author="donald duck",
    author_email="foo@bar.baz.quux",
    package_dir={'': 'src'},
    packages=find_packages('src'),
    zip_safe=False,
)

問題のあるキーワード引数が1つか2つあったことがわかりました。削除するpackage_dirpackages、問題は解決しました。したがって、これは作業バージョンです。

from setuptools import setup

setup(
    name='foobarbaz',
    version='1.0',
    author="donald duck",
    author_email="foo@bar.baz.quux",
    zip_safe=False,
)

あなたの状況が似ているかどうか、またはあなたがこれをまだ解決したかどうかはわかりませんが、私はこれが私のために働いたものです。

于 2013-07-15T18:41:10.453 に答える
0

「プラグインはすでに登録されています」という理由でグーグル経由でここに到着した人のために、私は単に私の環境を掃除することによってこの同様の問題を解決しました。

具体的には:

  1. pip uninstall私のパッケージで実行している例:pip uninstall foo
  2. モジュールを編集可能としてインストールすることによって作成されたディレクトリを削除しfoo.egg-info/ますbar.egg-info/
  3. virtualenvの再インストールも機能します。

根本的な原因は、パッケージの名前をからfooに変更しbar、編集可能モード(pip install -e foo)でインストールし、アーティファクトをクリーンアップしなかったことです。

 setup(
-    name="foo",
+    name="bar",
于 2021-12-28T10:35:58.807 に答える