Συγκέντρωση γραφομηχανή κωδικό σφάλματος με το σύνολο get «βγήκε με κωδικό 1»

ψήφοι
13
get topLeft()      { return this._topLeft;             }

set topLeft(value) {  this._topLeft = value; Recalc(); }

Τα παραπάνω έργα κωδικός βρείτε στη γραφομηχανή Play, αλλά έλαβα σφάλμα κατασκευής, όταν σύνταξη από το Visual Studio 2012 error exited with code 1

Υπάρχει κάποιος προσπαθήσει να πάρει, που με γραφομηχανή και να οικοδομήσουμε με επιτυχία;

Δημοσιεύθηκε 07/10/2012 στις 17:08
πηγή χρήστη
Σε άλλες γλώσσες...                            


2 απαντήσεις

ψήφοι
19

Θα πρέπει να στοχεύουν ECMAScript v5, δηλαδή να περάσει το -target ES5επιχείρημα για τον compiler. Αυτό πρέπει να ρυθμιστεί στη διαμόρφωση στόχο αρχεία του έργου.

Δεν ξέρω αν VS έχει κάποιο ενσωματωμένο mechanims για την επεξεργασία διαμορφώσεις στόχο, ώστε να μπορώ να σας πω μόνο πώς να το κάνουμε με το χέρι. Απλά ανοίξτε το .csprojαρχείο έργου, αναζητήστε το Targetκόμβο όπου βρίσκεται η εντολή γραφομηχανή compiler, και προσθέστε το -target ES5επιχείρημα.

Στο config μου μοιάζει με αυτό:

<Target Name="BeforeBuild">
    <Exec Command="&quot;$(PROGRAMFILES)\Microsoft SDKs\TypeScript\0.8.0.0\tsc&quot; -target ES5 @(TypeScriptCompile ->'&quot;%(fullpath)&quot;', ' ')" />
</Target>

Εκσυγχρονίζω

Από την έκδοση 0.8.1.0, το κωδικοποιημένο κείμενο εξάρτηση αφαιρέθηκε και προστέθηκε υποστήριξη για τους χάρτες πηγή, και έτσι ο Targetκόμβος μοιάζει τώρα με αυτό από προεπιλογή:

<Target Name="BeforeBuild">
    <Message Text="Compiling TypeScript files" />
    <Message Text="Executing tsc$(TypeScriptSourceMap) @(TypeScriptCompile ->'&quot;%(fullpath)&quot;', ' ')" />
    <Exec Command="tsc$(TypeScriptSourceMap) @(TypeScriptCompile ->'&quot;%(fullpath)&quot;', ' ')" />
</Target>

Ένεση το targetεπιχείρημα είναι ακόμα αρκετά εύκολο, απλά να το θέσω μετά tscή $(TypeScriptSourceMap):

<Message Text="Executing tsc --target ES5 $(TypeScriptSourceMap) @(TypeScriptCompile ->'&quot;%(fullpath)&quot;', ' ')" />
<Exec Command="tsc --target ES5 $(TypeScriptSourceMap) @(TypeScriptCompile ->'&quot;%(fullpath)&quot;', ' ')" />
Απαντήθηκε 07/10/2012 στις 18:07
πηγή χρήστη

ψήφοι
9

Από 0.8.2 είχε άλλη αλλαγή. Μερικά από τα πράγματα κατασκευής κοινή γραφομηχανή μεταφέρθηκε από .csproj σας σε ένα εξωτερικό αρχείο κατασκευής. Όπως αυτό:

<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets" />

.csproj σας παίρνει ακόμα να θέσει κάποια επιχειρήματα σχετικά με την κατασκευή γραφομηχανή, συμπεριλαμβάνοντας τους ως στοιχεία της κατασκευής. ένα από αυτά τα στοιχεία είναι η έκδοση ES. Το πρότυπο δημιουργήθηκε δύο ομάδων για μένα, ένα για τον εντοπισμό σφαλμάτων και ένα για την απελευθέρωση:

  <PropertyGroup Condition="'$(Configuration)' == 'Debug'">
    <TypeScriptTarget>ES3</TypeScriptTarget>
    <TypeScriptIncludeComments>true</TypeScriptIncludeComments>
    <TypeScriptSourceMap>true</TypeScriptSourceMap>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)' == 'Release'">
    <TypeScriptTarget>ES3</TypeScriptTarget>
    <TypeScriptIncludeComments>false</TypeScriptIncludeComments>
    <TypeScriptSourceMap>false</TypeScriptSourceMap>
  </PropertyGroup>

για το επιθυμητό αποτέλεσμα απλά να αλλάξετε το ES3 για να ES5

Για βαθύτερη κατανόηση του πώς αυτό καταλήγει τελικά ως μέρος της πρόσκλησης προς τον compiler γραφομηχανή ρίξτε μια ματιά στο αρχείο Microsoft.TypeScript.targets.

Καλή τύχη,

Απαντήθηκε 04/03/2013 στις 13:17
πηγή χρήστη

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more