しっぽを追いかけて

ぐるぐるしながら考えています

Unity と猫の話題が中心   掲載内容は個人の私見であり、所属組織の見解ではありません

Unity 2021 でローカルパッケージから名前空間のない外部ライブラリを参照する

※ これは 2021/12/16 時点の Unity 2021.2.6f1 の情報です

最新版では動作が異なる可能性がありますのでご注意ください

Packages 管理の自作基盤ライブラリの移行を進めているとまたコンパイルエラー!

また見つからない系エラー

今度は Asset Store からインポートした下記 Precise Locale というライブラリの参照ができない模様

はいはい、ローカルパッケージ側の Assembly Definition References に追加すればいいんでしょと参照先一覧を開いてみるも

出てこない

一覧に PreciseLocale が出てこない

Precise Locale のインポート内容は下記のような感じなので、PreciseLocale.cs を開いてみると、なんとこのスクリプト名前空間が省略されている

インポート内容

・・・名前空間が省略されているから参照先一覧に出てこない模様

というわけで、Assets/PreciseLocale に [Create] - [Assembly Definition] を選んで .asmdef ファイルを作成

Assembly Definition ファイル作成

名前はクラス名と重複して競合しないように PreciseLocale.Module にした

クラス名とかぶらない名前に

すると ローカルパッケージ側の Assembly Definition References に参照先として PreciseLocale.Module が表示されるようになった

参照先一覧が更新される

最後に忘れずに [Apply] ボタンを押下、これで見つからないエラーも解消された!