[F#] フォルダ分けしてあるmoduleのフォルダ名がNot Foundになるときの対処法

なぜか特定のフォルダへ参照が通らなくなってビルドができなくなったときのログです。

原因を特定できないまま問題が発生しなくなったので、対応として正しかったのかはわからないのですが、次に起きたときのためにまとめておきます。

スポンサーリンク

環境

  • macOS High Sierra 10.13.6
  • Visual Studio fo Mac Community 8.1

前提

  • 以下のソリューション構成になっている
    ├ Folder ┬ View.fs
    |    └ Object.fs

    └ Program.fs
  • View.fsにはnamespaceの宣言はありません

現象

Program.fsでView.fsを使いたいので、mainメソッドに以下のように書いてみる。

[<EntryPoint>]
let main _ =
  let view = new Folder.View.View()

すると、「Folder」に対して「The namespace or module ‘Folder’ is not defined.」のエラーが出てしまいビルドが通らない。

直し方

いろいろ試しましたが原因がわからなかったので、ソースコードを一旦プロジェクトから外して、再度入れ直したらビルドが通るようになりました。

うーん。

これにより問題が再現しなくなってしまったので、結局原因を特定できていないです。

同じような現象が起きた方は、このような対応で直せるかもしれないので試してみるとよいかと思います。

おしまい。

スポンサーリンク

F#F#

Posted by peliphilo