Posted at

Unity+VSCode使用時に「"GetReferenceNearestTargetFrameworkTask"タスクが見つかりませんでした。」と出た際の対処法

More than 1 year has passed since last update.

Unity+VSCodeで作業していると以下のエラーが出力され、VSCode上でのみエラーが出力される現象が発生したので対処方法をメモします。


"GetReferenceNearestTargetFrameworkTask" タスクが見つかりませんでした。次のことを確認してください。1.)プロジェクト ファイルの中のタスク名がタスク クラス名と同一である。2.)タスク クラスが public であり Microsoft.Build.Framework.ITask インターフェイスを実装する。3.)プロジェクト ファイルまたは "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin" ディレクトリに配置された *.tasks ファイルの中の <UsingTask> でタスクが正しく宣言されている。

error.jpg

※VSCode上で確認したエラーについて正確に言うと、以下の様な名前空間が見つからないと言ったエラーが発生しました。

The type or namespace name 'UnityEditor' could not be found (are you missing a using directive or an assembly reference?) [Assembly-CSharp]


  • 環境について


    • OSはWindows10

    • Unity2017.4.1 f1で確認

    • VSCodeのバージョンは1.22.2




対処方法

ググってみた所、以下のフォーラムに近似する現象と思われるものがありました。

Visual Studio Problem

その上で結論から言うと、VisualStudioInstallerから取得できる「Visual Studio Build Tools」から「NuGetのターゲットおよびビルドタスク」を取得することで解決できました。


手順

VisualStudioInstallerを開き、「VisualStudioBuildTools」から変更を選択

change.jpg

上の方にあるタブから「個別のコンポーネント」を選択。

後はコードツール欄にある「NuGetのターゲットおよびビルドタスク」を選択してインストール

build.jpg