9

ReadTheDocs を使用して Python プロジェクトを文書化しようとしています。最初は、ビルド プロセスは次のようになると停止していました。

from osgeo import gdal, osr

私はrtd faqを読み、問題を起こしていた osgeo モジュールにモックを使用しました。これで、ビルド プロセスはそのインポートを通過しますが、チョークします。

from osgeo.gdalconst import * 

このかなり役に立たないエラーで:

RuntimeError: sys.path must be a list of directory names

私はモックの使用にまったくosgeo慣れていませんが、問題はモック モジュールであるため、 submodule がないことだと思いますgdalconst。どうすればそれを回避できますか?サブモジュールもモックする方法はありますか?

4

1 に答える 1

6

少し遅れました…しかし、解決策を探してこれに出くわしました(ネストされたモジュールを使用してmock)。モジュールとサブモジュールを次のようにモックしました。

MOCK_MODULES = ['dbs', 'dbs.apis', 'dbs.apis.dbsClient']
sys.modules.update((mod_name, Mock()) for mod_name in MOCK_MODULES)

順序が重要な場所。これが、これを解決しようとしている他の人に役立つことを願っています。

于 2016-02-05T17:09:52.433 に答える