あるSEのつぶやき・改

ITやシステム開発などの技術に関する話題を、取り上げたりしています。

Xamarin,Realmを使おうと思ったらFodyWeavers.xmlがないと怒られた

Xamarin で Realm を使おうと思って、Nuget で Realm をインストールして実行したら FodyWeavers.xml がないとコンパイラに怒られました。

Error: Fody: Could not find path to weavers file. Searched '/Users/xxx/Projects/XamarinRealm/FodyWeavers.xml', '/Users/xxx/Projects/XamarinRealm/RealmSample/FodyWeavers.xml'. (RealmSample)

ネットを検索すると、空の FodyWeavers.xml ファイルを作成すれば OK っぽい。

なので、 空の FodyWeavers.xml を作成して実行したらまた怒られた。

Error: Fody: Could not read 'FodyWeavers.xml' because it has invalid xml. Message: 'Root element is missing.'. (RealmSample)

ルートエレメントなんて知らないよ!と思いつつ検索してみたら、ネット上にヒントを見つけたので、FodyWeavers.xml を以下のように作成して実行してみました。

<?xml version="1.0" encoding="UTF-8" ?>
<Weavers>
</Weavers>

今度はまた最初のエラーがでました。

どうも、PCL のライブラリと Xamarin.iOS のプロジェクトの両方に FodyWeavers.xml が必要な模様。

FodyWeavers.xml を両方に配置して再度実行すると、ビルドを通過して無事に実行できました。

しかし、この問題はひっかかったら普通分からないのでは?