2017-03-23 9 views
1

これが何らかの時点で機能しなくなったか、常にこのようになったのかどうかは想像できません。私がpowershellモジュールを開発する際には、ローカルリポジトリディレクトリから明示的にロードして、すべてが正しく動作していることを確認したいと考えています。 MSDN indicates this should workは、しかし、私はエラーを取得する:明示的なパスからpowershellモジュールを読み込めません

"The specified module .\SomeModule was not loaded because no valid module file was found in any module directory. FileNotFoundException"

私はそれがディレクトリにPSM1ファイルを見つけることができませんが、私は理由を理解することはできませんので、これは予想されます。 psm1ファイルを直接参照してモジュールを読み込むことはできますが、マニフェストによってロードされているものは除外されます。モジュールを標準のモジュールパスの1つにコピーすることもでき、正しくロードされます。これは私が回避策としてやってきたことですが、これを理解することが大好きです。 TIA

**アップデート:インポートコマンド実行中にRanプロセスモニタ。面白い結果。それはちょうどpowershellのバグかもしれないように思えます。

Load from explicit path

+0

モジュールマニフェストファイルを直接参照してモジュールをロードできます。 –

+0

ああ、それはうまくいった。これまでに試したと思ったが、RootModuleプロパティでpsm1ファイルをまだ指定していないのではないかと思う。これとModuleListをチェックして、それが正しくロードされているものにどのような影響があるかを調べます。 msdnに表示されているフォルダパスを使用してロードすることについて他に誰も言わない場合は、正しいと答えます。それは私のニーズにちょうどいいです。ありがとう! –

+0

モジュールマニフェスト(.psd1)ファイル名はフォルダと同じですか?例えば... \ MyModule \ MyModule.psd1'?それらが同じでない場合は、モジュールをロードする際にマニフェストファイル名を明示的に参照する必要があります。一致する場合は、マニフェストファイル名を指定しないでフォルダパスを指定するだけです。 @ JamesC。 –

答えて

1

その後、任意の依存関係がロードされていることを確認しますれ、(.psd1)直接モジュールマニフェストファイルを参照することにより、モジュールをロードすることができます。

関連する問題