空のスクリプトエラーが出てコンパイルできなくなる問題について

安原 祐二 -

Windows版の Unity 2019.1、Unity 2019.2 において、ある条件下でスクリプトのコンパイルに必ず失敗してしまう問題が発生します。本件の特徴として、そのメッセージが空になっていることが挙げられます。Untitled.pngこの問題の要因は、Unity Hub v2.2.0 において、環境変数の展開の方法が変わったことでPATHEXTの値が変化してしまっていたことにあります。2019.3 においては PATHEXT に依存しない方式になっているため、この問題は起きません。また本件が発生する条件として、何らかのソフトウェアがユーザ環境変数のPATHEXTを定義していることがあります。例えば ruby のインストールなどをしていた場合に遭遇してしまうかもしれません。

 

本件に遭遇してしまった場合、Unity Hub が更新されるまでの対処として以下をお試しください。

i) Unityが起動していたら終了
ii) エクスプローラなどで C:\Program Files\Unity\Hub\Editor\2019.2.14f1\Editor\Data\Tools\RoslynScripts に移動(Unityのバージョンはご自分のものを。そしてインストール時に場所をデフォルトから変更した場合はその場所に読み替えてください)
iii) そこにある unity_csc.bat をメモ張などで開き、
"%APPLICATION_CONTENTS%\Tools\Roslyn\csc" /shared %*
という行を
"%APPLICATION_CONTENTS%\Tools\Roslyn\csc.exe" /shared %*
と書き換えて保存(.exeを追加しているだけです)
iv) Unityを再起動

この対処の副作用は特にありませんので、問題が解消されたあともこのままで問題ありません。

ご迷惑をおかけしますが、どうぞよろしくお願いします。

この記事は役に立ちましたか?
0人中0人がこの記事が役に立ったと言っています
他にご質問がございましたら、リクエストを送信してください

0 コメント

記事コメントは受け付けていません。
Powered by Zendesk