複数のアプリで同じコードを使い回せるようにしたかったからです。
- 自作のネイティブライブラリ(Binding Library)のDLL(iOS, Android)
- Binding Libraryを使うXamarin.NativeのDLL(iOS, Android)
- PCLのDLL
これらのファイルをnuspecに書いて、JenkinsからXamarin Studio(Mac)側のNuGetでpackしました。
そして出来たnupkgファイルをローカルにおいてVisual Studioで読み込ませてみようとしました。
・・・が、できません。表示されないのです。
Simple NuGet Severで構築したサーバにPushするとインストールはできるのですが、アンインストールや更新ができません。(metadataが読めない的なエラーが出る)
別に作った、Binding Libraryがないnupkgだと普通にアンインストールも更新もできます。
ちょっとワケが分からなかったのですが、色々試した結果、Windows側のNuGetでpackすると多少マシになりました。
「インストール済み」を見ようとするとエラーが表示されるのですが、とりあえずパッケージを選んでアンインストールしたり更新したりはできるようになりました。
Macで作成したnupkgとWindowsで作成したnupkgを展開してdiffしてみると、テキストファイルの改行コードが一部異なったりして(これはGitの影響かもしれないけど)、まぁ違うんだなーと。
あとNuGetのバージョンもMacのほうは2.12で、Windowsのほうは3.4と異なるので、とりあえずWindowsでpack, pushするようにしました(Jenkinsおじさんが)
なんというかMSDN付きで良かったと思う、今日この頃です。