2016-04-28 5 views
1

Ich benutze uglify mit Grunzen, und aus irgendeinem Grund wirft es eine Warnung auf meine app-Datei:Warnung: Uglification ist fehlgeschlagen. Unexpected token: eof (undefined)

Warnung: Verhäßlichung fehlgeschlagen. Unerwartetes Token: eof (undefiniert). Zeile 15472 in dist/app.annotated.js Verwenden Sie --force, um fortzufahren.

Dies ist die Datei mit den Linien:

15469 $scope.selectLocation = function() { 
15470  $("#locationIframe").html(''); 
15471  if (($scope.LeadObj.address1 == "" || $scope.LeadObj.address1 == null) && $scope.LeadObj.ip != null) { 
15472   $scope.showLocation = 'loading'; 
15473   $.ajax({ 
15474    type: 'GET', 

Neben der Tatsache, dass dieser Code dumm ist, warum ich diese Warnung erhalten? es alle heraus überprüft.

+0

'EOF' bedeutet, dass die Datei endet, wenn immer noch mehr Code angezeigt wird. Gibt es eine Linie 15475? – Pointy

+0

@Pointy Es gibt Tausende von weiteren Zeilen. Die Anwendung app.annotated.js funktioniert für mich (keine Fehler in der Konsole), aber aus irgendeinem Grund schlägt sie fehl – Amit

+0

Diese Art von Sache schlägt normalerweise vor, dass ein unsichtbares Zeichen in Ihrem Code ist. Es scheint nicht in dem Code in der Frage zu sein, aber wenn es nicht reines Kopieren und Einfügen war (oder sogar in einigen Fällen, wenn es wäre), hätte es fallen gelassen werden können. –

Antwort

0

Wie in den Kommentaren vorgeschlagen, war das Problem mit, wie die Zeilen endeten. Nicht alle von ihnen endeten im UNIX-Stil \n.

Die Lösung war, grunt-lineending zu verwenden, um die Datei zu konvertieren, um richtige Zeilenenden vor dem Verändern zu verwenden.

lineending: { 
    dist: { 
     options: { 
      overwrite: true, 
      eol: 'lf' 
     }, 
     files: { 
      '': ['dist/**/*.js'] 
     } 
    } 
},