0

私は、クイックスタート Azure IoT Edgeチュートリアルに従っており、セクションIoT Edge ランタイムを構成します

IoT Edge デバイス接続文字列を使用してランタイムを構成するとき

iotedgectl setup --connection-string "{device connection string}" --nopass

(接続文字列を変更しました)次の結果が得られます

Traceback (most recent call last):
  File "/usr/local/bin/iotedgectl", line 11, in <module>
    sys.exit(coremain())
  File "/Library/Python/2.7/site-packages/edgectl/__init__.py", line 23, in coremain
    version = pkg_resources.require(PACKAGE_NAME)[0].version
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources/__init__.py", line 959, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources/__init__.py", line 851, in resolve
    raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.ContextualVersionConflict: (pyOpenSSL 0.13.1 (/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python), Requirement.parse('pyOpenSSL>=0.14'), set(['docker']))

それは私がコマンドを続けることを許可しません

iotedgectl start

私はファイルinit .pyを見ました行 857-859 から

        # Register the new requirements needed by req
        for new_requirement in new_requirements:
            required_by[new_requirement].add(req.project_name)

848~851行目

 if dist not in req:
                # Oops, the "best" so far conflicts with a dependency
                dependent_req = required_by[req]
                raise VersionConflict(dist, req).with_context(dependent_req)

959行目

needed = self.resolve(parse_requirements(requirements))

そこで何を変える必要がありますか?または、何を構成する必要がありますか?

4

2 に答える 2

1

メッセージから、pyOpenSSL が古すぎることがわかります。0.14 以降が必要です。

Traceback (most recent call last):
  File "/usr/local/bin/iotedgectl", line 11, in <module>
    sys.exit(coremain())
  File "/Library/Python/2.7/site-packages/edgectl/__init__.py", line 23, in coremain
    version = pkg_resources.require(PACKAGE_NAME)[0].version
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources/__init__.py",
 line 959, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources/__init__.py",
 line 851, in resolve
    raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.ContextualVersionConflict: (pyOpenSSL 0.13.1 (/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python),
 Requirement.parse('pyOpenSSL>=0.14'), set(['docker']))

次のコマンドを使用して、pyOpenSSL をアップグレードできます。

pip install --upgrade pyOpenSSL

問題が解決しない場合は、お気軽にお問い合わせください。

于 2018-05-07T07:03:48.517 に答える