2015-05-09 16 views
8

Aktualizuję projekt, aby korzystać z najnowszych wersji wszystkiego. Właśnie zaktualizowałem projekt MVC 4 z .Net 4.0 do .Net 4.5.1. Następnie zaktualizowałem pakiety nugetów (odinstalowałem niektóre i ponownie instalowałem, ponieważ były oparte na .Net 4.0). Po tym, jak zaktualizowałem maszynową wersję Maszynopisu do wersji 1.4, to wszystko trafiło w wentylator. Tylko dwa proste błędy. Pierwszy:Jak edytować plik wykonywalny określonego pliku skryptowego 1.4 "?

Your project file uses a different version of the TypeScript compiler and tools than is currently installed on this machine. No compiler was found at C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.4\1.4\tsc.exe. You may be able to fix this problem by changing the element in your project file.

Zrobiłem pewien, że to było ustawione na "1.4"

<TypeScriptToolsVersion>1.4</TypeScriptToolsVersion> 

Drugi błąd:

The specified task executable location "C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.4\1.4\tsc.exe" is invalid.

Więc próbowałem zlokalizować gdzie ścieżka została ustalona i podjąć na zewnątrz, gdzie próbował znaleźć drugi folder "1.4". Ścieżka powinna być:

C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.4\tsc.exe

Nie mogę znaleźć miejsca, w którym jest ustawione i jak mogę to zmienić.

Próbowałem:

Ponowna instalacja i naprawy Typescript 1,4 i szukają wszędzie, gdzie ścieżka jest ustawiony.

Czytałem odpowiedzi, które obejmują sprawdzanie "Sprawdź zmienną środowiskową PATH". Nie mogę znaleźć, gdzie to zmienić, aw tym momencie mój mózg jest zły.

Jestem w Visual Studio 2013 Ultimate. Dzięki.

+0

Mam ten sam problem, coś musi pójść nie tak podczas aktualizacji z wersji 1.0 do 1.4 ... – pauloya

Odpowiedz

12

Miałem ten sam problem. Tylko w ten sposób udało mi się stworzyć nowy folder "1.4" w C: \ Program Files (x86) \ Microsoft SDKs \ TypeScript \ 1.4 i skopiować do "C: \ Program Files (x86) \ Microsoft SDKs \ TypeScript \ 1.4 ** 1.4 ** "wszystkie pliki z katalogu nadrzędnego.

Głupie rozwiązanie, ale działa dla mnie.

+0

Właśnie to zakończyłem, było szybkie i brudne. – CodeBob

+0

Genialne rozwiązanie dla głupiego problemu. –

0

1.4

Wersja narzędzia nie jest taka sama jak wersja kompilatora. Dla 1.4 wersja jest 1.0 (myślę).

I can't seem to find where this is set, and how I can change it.

Jest ustawiona w Microsoft.TypeScript.targets (lokalizacja jak: C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\TypeScript). Kopalnia zawiera:

<PropertyGroup> 
    <TypeScriptToolsVersion Condition="'$(TypeScriptToolsVersion)'==''">1.0</TypeScriptToolsVersion> 
    <TscToolPath Condition="'$(TscToolPath)' == ''">$(MSBuildProgramFiles32)\Microsoft SDKs\TypeScript</TscToolPath> 
    <TscToolPath Condition="'$(TypeScriptToolsVersion)' != ''">$(TscToolPath)\$(TypeScriptToolsVersion)</TscToolPath> 
    <TscToolExe Condition="'$(TscToolExe)' == ''">tsc.exe</TscToolExe> 
    <TscYieldDuringToolExecution Condition="'$(TscYieldDuringToolExecution)' == ''">true</TscYieldDuringToolExecution> 
    </PropertyGroup> 

OSOBISTE OPININONS: Nie używam visual studio/msbuild i zalecamy inwestować w edytorze OSS jak atomu (Zastrzeżenie: opiekunach) oraz budowy rurociągu jak grunt LUB haustem.

5

Zainstalowałem wersję 1.5, a następnie ją odinstalowałem. Po odinstalowaniu wersji 1.5 zacząłem otrzymywać dokładnie ten sam błąd, który otrzymujesz. Aby to naprawić, musiałem uruchomić naprawę w panelu sterowania instalacji Visual Studio. Uruchomienie naprawy w Visual Studio naprawi odwołania do ścieżki SDK.

nie wiem, czy te kroki są konieczne, ale przed uruchomieniem naprawy ręcznie poszedł do:

C:\Program Files (x86)\Microsoft SDKs

i przemianowany folder maszynopis.

Pod ścieżką MSBuild może znajdować się wiele wersji programu Visual Studio. Wszedłem do każdego i zmieniłem nazwę folderu TypeScript.

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v12.0\

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\

Następnie uruchomiłem naprawę na mojej instalacji Visual Studio z panelu sterowania. Jeśli nie chcesz, aby uruchomić naprawę na pełnej instalacji i masz oryginalny nośnik instalacyjny lub ISO można uruchomić pakiety SDK i VS maszynopis z:

H:\packages\TypeScript_SDK

H:\packages\TypeScript_VS

Po uruchomieniu naprawy lub uruchomić pakiety indywidualnie będziesz miał starą wersję TypeScript i możesz teraz przejść do Visual Studio i użyć okna dialogowego Extensions and Updates, aby zainstalować TypeScript 1.4.

+0

Poprawiło to również problem dla mnie. Żądanie odinstalowania/naprawy może to oczyścić bez konieczności pomijania innych folderów, jednak te kroki rozwiązały dla mnie ten problem. Dzięki za pomoc, kręci się w kółko, próbując zrozumieć problem. Wszystko w pliku docelowym wydawało mi się poprawne! – Flinkman

+0

Dzięki, pracowałem również nad problemami z 1.8 (VS2015 po VS2013). – Remco

8

Rozwiązanie:

  1. idź do C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio i zmienić nazwę folderu typescript wewnątrz wersji VisualStudio. Na przykład zmieniłem nazwę na folder Typescript wewnątrz v12.0.

  2. Przejdź do C:\Program Files (x86)\Microsoft SDKs i zmień również nazwę folderu typescript.

  3. Przejdź do programu i funkcji w panelu sterowania, wyszukaj opis i napraw maszynopis.

To rozwiązanie będzie rozwiązać problem, teraz można usunąć zmienionych nazwach folderów

+0

To zadziałało dla mnie, dzięki! – Ben

1

EDIT: miałem dalszych problemów niż to i okazało się, że mój projekt potrzebny 1.0 Mam zatem miał aby powrócić do tego, odinstalowując TypeScript, usuwając/zmieniając nazwę C:\Program Files\MSBuild\Microsoft\VisualStudio\v12.0\TypeScript i C:\Program Files\Microsoft Visual Studio 12.0\Common7\IDE\CommonExtensions\Microsoft\TypeScript, a następnie uruchamiając opcję naprawy z instalatora/deinstalatora.


Dla mnie, ja zainstalowany 1,5 i miał wymóg, aby wrócić do 1.4. Po powrocie do 1.4 że potrzebny do zmiany

Microsoft.TypeScript.Targets

w

C:\Program Files\MSBuild\Microsoft\VisualStudio\v12.0\TypeScript\

zakomentowanie dodawał z TypeScriptToolsVersion z tego

<PropertyGroup> 
    <TypeScriptToolsVersion Condition="'$(TypeScriptToolsVersion)'==''">1.4</TypeScriptToolsVersion> 
    <TscToolPath Condition="'$(TscToolPath)' == ''">$(MSBuildProgramFiles32)\Microsoft SDKs\TypeScript</TscToolPath> 
    <!--<TscToolPath Condition="'$(TypeScriptToolsVersion)' != ''">$(TscToolPath)\$(TypeScriptToolsVersion)</TscToolPath>--> 
    <TscToolExe Condition="'$(TscToolExe)' == ''">tsc.exe</TscToolExe> 
    <TscYieldDuringToolExecution Condition="'$(TscYieldDuringToolExecution)' == ''">true</TscYieldDuringToolExecution> 
</PropertyGroup> 

do tego

<PropertyGroup> 
    <TypeScriptToolsVersion Condition="'$(TypeScriptToolsVersion)'==''">1.4</TypeScriptToolsVersion> 
    <TscToolPath Condition="'$(TscToolPath)' == ''">$(MSBuildProgramFiles32)\Microsoft SDKs\TypeScript</TscToolPath> 
    <TscToolPath Condition="'$(TypeScriptToolsVersion)' != ''">$(TscToolPath)\$(TypeScriptToolsVersion)</TscToolPath> 
    <TscToolExe Condition="'$(TscToolExe)' == ''">tsc.exe</TscToolExe> 
    <TscYieldDuringToolExecution Condition="'$(TscYieldDuringToolExecution)' == ''">true</TscYieldDuringToolExecution> 
</PropertyGroup> 
0

To był błąd w TypeScript, który rzekomo został naprawiony. Błąd powielił wersję TypeScript w ścieżce.

referencyjny: https://github.com/Microsoft/TypeScript/issues/3493

Uwaga: Jest podobny problem teraz, jeśli starają się budować z Visual Studio Online. Zgodnie z tym samym wątku, VSO zespół jest świadomy i pracuje nad jego rozwiązaniem ...

1

Miałem ten błąd w VS2013 też:

The specified task executable location "C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.4\1.4\tsc.exe" is invalid error.

Oto rozwiązanie, które pracował dla mnie, od this GitHub comment autor: paulvanbrenk:

Myślę, że mam poprawkę, która powinna przejść do 1.8 ostatecznego .. jednak w międzyczasie. Czy możesz sprawdzić pliki Microsoft.TypeScript.targets w C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v12.0\TypeScript i sprawdzić, czy istnieje element TscToolPath, który dołącza TypeScriptToolsVersion. Usunięcie TypeScriptToolsVersion z tego elementu powinno rozwiązać problem.

Powiązane problemy