Unity プロジェクトに追加したパッケージの削除方法&エラー時の試行錯誤

前回 DOTween アセットUnity プロジェクトに追加する手順を紹介しました。
今回は Unity プロジェクトに追加してあるパッケージの削除方法を紹介します。
通常のパッケージ削除の手順は、2章「パッケージの削除の手順」で完了しています。
その後は、import 直後にエラーが発生したためか、その手順が踏めない現象に対する試行錯誤が書かれているので、飛ばしても構いません
※ Unity は 2021.3.14f1、OS は Windows 10 です。

LeanTween について

今回、削除するパッケージは LeanTween です。
実は DOTween を追加する前に同様の手順で LeanTween を追加したのですが、その直後に次のようなエラーが Console ウィンドウに表示されました。

LeanTween を Import 直後、Console にエラーメッセージが表示されました。

LeanTween を Import 直後、Console にエラーメッセージが表示されました。

Error while saving Prefab: ‘Assets/LeanTween/Examples/Prefabs/EndlessPiece.prefab’. You are trying to save a Prefab with a missing script. This is not allowed.
Please change the script or remove it from the GameObject ‘EndlessPiece’.

そのエラーメッセージを頼りに検索すると以下のサイトが見つかりました。
“EndlessPiece” has missing script · Issue #163 · dentedpixel/LeanTween · GitHub

これによるとプロジェクトに紐づいた Visual Studio を起動してビルドすると直ったとありましたが、改善されませんでした。

Visual Studio の LeanTween を含むソリューション

Visual Studio の LeanTween を含むソリューション

結局、エラーの解決法が公式からアナウンスされていないようなので、あきらめました。
せっかくなので、その削除方法を具体的な例として使うことにします。

パッケージの削除

Unity プロジェクトに LeanTween を追加した際の [Package Manager] ウィンドウです。
※メニュー[Window]→[Package Manager]から表示できます。

Package Manager の LeanTween のページ

Package Manager の LeanTween のページ

[Package Manager] ウィンドウの左上の [Packages:] のドロップダウンから In Projcet を選択します。

Package Manager ウィンドウで Packages を In Project に変更します。

Package Manager ウィンドウで Packages を In Project に変更します。

あとは、削除したいパッケージ名をリストから選択して、詳細ビュー右下の [Remove] ボタンを押して削除完了です。

Package Manager ウィンドウの Package: In Project で詳細ビューに表示される [Remove] ボタン

Package Manager ウィンドウの Package: In Project で詳細ビューに表示される [Remove] ボタン

の、はずでした。通常はここでパッケージ削除完了のはずです。

しかし、今回はパッケージの Import 直後にエラーが発生したためか [Remove] ボタンどころか [Packages: In Project]リストに LeanTween が表示されません。検索しても In project では見つかりません。

Packages: In Project のリストに LeanTween はありません

Packages: In Project のリストに LeanTween はありません

バグを我流で対策する

エラーが発生しないパッケージなら公式の説明の通り、前の章まででパッケージを削除できたと思います。
LeanTween に関しては、その手順通りにしてもリストに表示されなかったため、ここからは推論に基づく手順を記録します。
この章はあまり真剣に読まず、一人のユーザの試行錯誤と思ってください

それでは、エラーメッセージにあったとおり、 EndlessPiece.prefab のコンポーネントから問題のスクリプトを除外します。

Error while saving Prefab: ‘Assets/LeanTween/Examples/Prefabs/EndlessPiece.prefab‘. You are trying to save a Prefab with a missing script. This is not allowed.
Please change the script or remove it from the GameObject ‘EndlessPiece’.

Project ウィンドウで Assets>LeanTween>Examples>Prefabs の EndlessPiece.prefab を選択すると、 Inspector ウィンドウに「問題を解決するためにこのプレハブを開いてください」とありました。

LeanTween の EndlessPiece プレハブを選択した際の Inspector ウィンドウ

LeanTween の EndlessPiece プレハブを選択した際の Inspector ウィンドウ

そこで EndlessPiece.prefab をダブルクリックすると Hierarchy ウィンドウにそのプレハブの内部が表示されました。

Hierarchy ウィンドウの LeanTween の EndlessPiece

Hierarchy ウィンドウの LeanTween の EndlessPiece

[Hierarchy] ウィンドウの EndlessPiece を選択すると、 Inspector ウィンドウに missing と書かれたスクリプト設定欄が表示されます。

LeanTween の EndlessPiece の Missing 箇所

LeanTween の EndlessPiece の Missing 箇所

下の AudioSource の AudioClip にも Missing がありますが、エラーが発生しているのは Script なのでそちらを None に変更します。

LeanTween EndlessPiece の Missing を None に変えた直後に表示されたダイアログ

LeanTween EndlessPiece の Missing を None に変えた直後に表示されたダイアログ

Script コンポーネントに無効なスクリプトを割り当てることが問題なのかと思ったので Script コンポーネント自体を削除し、 Ctrl+S で保存しました。先ほどのダイアログは表示されません。

LeanTween EndlessPiece のScript のコンポーネント自体を除去

LeanTween EndlessPiece のScript のコンポーネント自体を除去

そして、 Unity エディタを再起動しました。
先ほどのエラーメッセージおよび警告は表示されません。
※これがこの章の唯一の成果かもしれません。

しかし、[Package Manager] ウィンドウの [Packages: In project] のリストには相変わらず LeanTween はありません。
import 直後にエラーが発生したので [Packages: In project] に入らなかったのでしょうか。

結局、エクスプローラから Assets/LeanTween フォルダと、 Assets.LeanTween.meta ファイルを削除しました。

※もしも LeanTween のように公式の手順で削除できなくなった場合は、削除するのではなくプロジェクトを作り直したほうが良いかもしれません。結局さっきの処置のあと私はそうしました。

 

コメント

Ads Blocker Image Powered by Code Help Pro

お願い - Ads Blocker Detected

このサイトは広告を掲載して運営しています。

ポップアップを閉じて閲覧できますが、よろしければ

このサイト内の広告を非表示にする拡張機能をオフにしていただけませんか?

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

We have detected that you are using extensions to block ads. Please support us by disabling these ads blocker.

タイトルとURLをコピーしました