私のVisual Studio 2015 Webソリューションにtsconfig.jsonファイルを追加するとすぐに、上記のエラーが発生します。
"compileOnSave"をtrueに設定しても、これはコンパイラがjsファイルを再生成するのを止めます。
エラーをダブルクリックすると、Unknown Item Group "TypeScriptCompile"などの多くの問題を含むMicrosoft.TypeScript.Targetsファイルに入ります。エラーリストではこれらは警告として表示されますが、tsconfig.jsonファイルがあるかどうかにかかわらずあります。
それを解決したり、問題が何であるかについてより多くの情報を得る方法はありますか?
これら2つのNuGetパッケージをインストールしてください。
Microsoft.TypeScript.MSBuildおよびMicrosoft.TypeScript.Compiler
それはあなたのプロジェクトをMSBuildタスク定義とTSコンパイラでアップデートし、コンパイルの問題を解決します
TypeScriptはすでにnpm
を介して私のマシンにインストールされていますが、私は Visual Studio用TypeScriptをインストールしました 。
私は.NET Core 1.0プロジェクトを使用していて、tsc.exe
の戻りコード1が返されるのと同じ状況に陥りました。私の問題は無効なtsconfig.json
でした。ただし、msbuildはそれらの詳細を提供しません。
見つける最も簡単な方法はVisual Studio -> Tools -> Options -> Projects and Solutions -> Build and Run -> MSBuild project build output verbosity
で詳細な出力を有効にすることです。これをDetailed
に変更します。コンパイル後、出力ウィンドウでtsc.exe
を見つけて、tscが投げた実際のエラーを確認します。
プロジェクトをTypeScriptの1.8
から2.3
にアップグレードしたとき、これはVisual Studio 2015を搭載したTeamCityビルドサーバーで機能しました。
Microsoft.TypeScript.MSBuild
次のように*.csproj
を更新します
TypeScriptToolsVersion
を2.3
にアップグレードします(この場合)。Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets
を参照していたImport Project
の2行を削除しますimport
要素を削除することは、それらが%PROGRAMFILES(X86)%
フォルダにインストールされたTypeScriptを参照しているので重要です。import
フォルダを参照するpackages
要素が追加され、ビルドの移植性が向上します。私はいくつかの標準的なAngular/TypeScriptチュートリアルを使用した後にもこの問題を抱えていました。解決策は、Visual StudioでTypeScriptを更新するのと同じくらい簡単でした。
何らかの理由で、デフォルトは1.8.4になりました。また、Visual Studio Extensionsから自動的に更新することはできません。また、期限切れであるとは言われません。あなたは ここ からそれをダウンロードしてあなた自身で最新バージョンをインストールしてください。ダウンロードリンクはもちろん将来変更されるかもしれません。
P.S私は問題が古いコンパイラに存在しなかったいくつかのオプションが使われたという事実によって引き起こされたと思います。
Microsoft.TypeScript.MsBuildをインストールすると問題が解決しましたが、最後から2番目のバージョンをインストールした場合に限られます。現在の(安定した)バージョンは2.0.6で、私がインストールした後も問題は解決しませんでした。私が1.8.11に戻ったとき、問題は解決しました。
私は同じ問題を抱えていました。プロジェクトファイルから以下を削除して修正しました
<TypeScriptToolsVersion>2.0</TypeScriptToolsVersion>
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\Typescript
内のすべてのファイルを何らかの新しいフォルダー(例えばbackup
)に移動してから、やり直してください。これにより、MSBuildは、C:\Program Files (x86)\Microsoft SDKs\TypeScript
内のフォルダを使用する代わりに、適切にバージョン管理されたフォルダ内からtsc.exe
を選択します。
あなたのシステムにTypeScriptを再インストール/アップグレードする必要があります。
私は同じ問題に直面していたとTypeScriptをインストールした後にtsc.exeが欠落していた(C:\ Program Files(x86)\ Microsoft SDKs\TypeScript\2.1)としてエラーを解決しました。
私は同じ問題に直面していました、そして、その理由は、2人の開発者が同じプロジェクトに取り組んでいたので、彼が新しい.tsファイルをプロジェクトといくつかの角度コントローラに追加したときです。しかし、別の開発者が自分のマシンに最新のソースコードを取り込もうとしたときにプロジェクトが再構築および実行されていたため、同じエラー "tsc.exe"がコード1で終了しました。ソース管理で作成/追加されたファイルが、開発者2のソリューションに追加されたことを示していませんでした。すべての.tsファイル、.jsファイルが両方の開発者向けソリューションで最新であるかどうかを確認してください。
AngularJSを使用したソリューションでもコンパイラなしで同じ問題が発生しました(2.x以下なので必要ありません)。私は単にスクリプトフォルダからindex.d.tsを削除し、それは大丈夫でした(NuGetパッケージは必要ありません)
ビジュアルスタジオの中の.ts
ファイルのうちの1つをダブルクリックすることは私のために働きました。その後、プロジェクトを最新バージョンのTSに更新するかどうかを尋ねるダイアログボックスが表示されました。その後、プロジェクトはうまくビルドされ、コンパイルエラーはなくなりました。
TypeScriptを変換するために、VSの外側でnpm
とangular-cli
を使用しています。私は、Web Essentialsエクステンションがロードされている唯一の開発ボックスで上記の問題に遭遇しました。インストールしてから上記で説明したMS nugetsとTypeScript拡張機能をアンインストールしても役に立たなかった後、Web Essentialsをアンインストールすると、やっとうまくいきました。