2016-05-24 2 views
7

nicht angezeigt werden Das ist etwas, das vor einigen Tagen gut funktionierte, also bin ich nicht sicher, was sich seitdem geändert hat (außer Aktualisierung auf ASP.NET Core RC2 und Installation einiger Erweiterungen für VS2015 wie ich mich erinnere)Typoskript-Kompilierungsfehler, die in VS2015 mit gulp-typescript

Das Problem ist, dass, wenn sie von VS2015 läuft eine Gulp Aufgabe meiner Typoskript Dateien zu kompilieren, wenn es einen Fehler gibt es zum Beispiel zeigt:

[10:02:54] Compiling typescript into javascript 
[10:02:56] TypeScript: 1 semantic error 
[10:02:56] TypeScript: emit succeeded (with errors) 
[10:02:56] Finished 'compile' after 2.47 s 
Process terminated with code 0. 

ohne Beschreibung des Fehlers .

in CMD:

$ tsc -v 
Version 1.8.10 

In VS2015 Package Manager-Konsole:

PM> tsc -v 
Version 1.8.10 

so denke ich VS2015 ist zumindest die gleiche Typoskript Compiler in PATH verwenden und das sollte kein Problem sein. Auch das ist die neueste Version, aber ich habe mit 1.7 versucht und das gleiche passiert.

Meine schluck Aufgabe:

gulp.task('compile', function() { 
    log('Compiling typescript into javascript'); 
    return gulp 
      .src(config.allts) 
      .pipe($.sourcemaps.init()) 
      .pipe($.typescript({ 
       noImplicitAny: true, 
       target: 'ES5' 
      })) 
      .pipe($.sourcemaps.write('.')) 
      .pipe(gulp.dest(config.compileFolder)); 
}); 

Und ich bin mit:

"gulp-typescript": "2.10.0" 

obwohl ich mit der neuesten versucht:

"gulp-typescript": "2.13.4" 

ohne Glück.

Als ich verstand ich an der Wurzel meines Projekts keine tsconfig.json brauchen, da ich gulp-typescript verwende und ich vorbei bereits die Compiler in der schluck Aufgabe selbst, so habe ich die tsconfig.json Ich hatte gelöscht weil es anscheinend nicht benutzt wird.

Wenn ich entfernen Sie alle Compiler von meiner großen Schluck Aufgabe:

gulp.task('compile', function() { 
    log('Compiling typescript into javascript'); 
    return gulp 
      .src(config.allts) 
      .pipe($.sourcemaps.init()) 
      .pipe($.typescript({ 
       //removed 
      })) 
      .pipe($.sourcemaps.write('.')) 
      .pipe(gulp.dest(config.compileFolder)); 
}); 

ich mehr semantische Fehler auch ohne Beschreibung.

[10:12:57] Compiling typescript into javascript 
[10:13:00] TypeScript: 184 semantic errors 
[10:13:00] TypeScript: emit succeeded (with errors) 
[10:13:01] Finished 'compile' after 3.83 s 
Process terminated with code 0. 

so werden die Optionen definitiv verwendet.

Und wenn in meinem CMD ich in den Ordner, in dem ich ein Typoskript haben und versuchen, es zu kompilieren mit:

C:/>Sample/app> tsc mytestfile.ts 

ich alle Typoskript Kompilierungsfehlern richtig sehen können.

Irgendeine Idee, was in meinem VS2015 oder meinem Schluck-Typoskript falsch sein könnte?

UPDATE: Ich habe mit Schluck-TSC statt Schluck-Typoskript versucht und es funktioniert gut. So muss das Problem mit großen Schluck-Typoskript sein

gulp.task('compile', function() { 
    log('Compiling typescript into javascript'); 
    return gulp 
      .src(config.allts) 
      .pipe($.sourcemaps.init()) 
      .pipe($.tsc({ 
       noImplicitAny: true, 
       target: 'ES5' 
      })) 
      .pipe($.sourcemaps.write('.')) 
      .pipe(gulp.dest(config.compileFolder)); 
}); 
+0

Ich habe das gleiche Problem mit VS2015 + Schluck-Typ-Skript auf der Maschine meines Teamkollegen, sein Terminal zeigt die kryptischen 'N semantischen Fehler'. Die Projektkonfiguration ist identisch, aber auf meinem Terminal kann ich die genauen Fehlerbeschreibungen sehen. – Cubius

+0

Meine aktuelle Problemumgehung besteht darin, zu "Build + IntelliSense" in dem VS "Error List" Fenster zu wechseln und die Information dort zu verwenden, um die Fehler zu beheben. – user764754

Antwort

3

Wenn Sie Microsoft .Net Core 1.0.0 RC2 Tooling Vorschau 1 installiert haben. Sieht aus wie es ein Problem: After installing Preview 1 of the tooling, TypeScript errors aren't shown #526

Aktualisiert Nach Veröffentlichung von .Net Core-1/Tooling Preview 2

Update auf/Installieren der Release-Version von .Net-Core 1.0, welche die Tooling auf Vorschau aktualisiert 2 Entschlüssen dieses Problem.

enter image description here

Vor diesem der Werkzeug Vorschau 1 zu deinstallieren und neu zu installieren Web-Entwicklungs-Tools für vs 2015 das Problem beheben würde, wo die Fehlerdetails sind nicht dargestellt.

Ich hatte das gleiche Problem. Da ich nicht die Funktionalität von .Net Core 1 RC2 Preview verwendet. Ich war in der Lage, das Problem mit Typoskript Fehlern zu beheben nicht mit der Problemumgehung in dem Fehlerbericht auf Github von erwähnt gezeigt werden:

  1. Deinstallation ‚Microsoft .Net-Core 1.0.0 RC2 - VS 2015 Tooling Vorschau 1‘ enter image description here
  2. Web-Entwicklungstools für Visual Studio 2015 im Studio hinzufügen/entfernen, Modify neu installieren. enter image description here

Nachdem ich so konnte ich wieder Typoskript Fehlermeldungen im Task-Runner Explorer sehen.

4

ich ein Teil der Antwort zumindest gefunden habe.Wenn Sie gulp-typescript über eine Nodejs-Eingabeaufforderung ausführen, werden Ihnen die Fehler angezeigt. Die Art und Weise, wie Gulp-Typescript die Fehlermeldungen ausgibt, wird im Visual Studio-Task-Runner jedoch nicht angezeigt.

Wenn ich den Reporter für Typoskript dazu verwendet ändern zeigt es die Fehler ganz gut (fügen Sie diese Funktion auf Ihrem gulpfile.js)

function visualStudioReporter() { 
    return { 
     error: function (error) { 
      //This works 
      gutil.log("Typescript: error", error.message); 
      //This isn't shown 
      console.error(error.message); 
     }, 
     finish: ts.reporter.defaultReporter().finish 
    }; 
} 

Und jetzt können Sie den Reporter wie dieser

var ts = require("gulp-typescript") 

gulp.task("compile", function() { 
    gulp.src("./**/*.ts") 
     .pipe(ts(tsProject, undefined, visualStudioReporter())) 
}); 
verwenden
+0

wahrscheinlich offensichtlich, aber icymi 'var gutil = erfordern ('gulp-util');' was sich auf https://www.npmjs.com/package/gulp-util bezieht. Tolle Lösung übrigens, danke! –