2015-08-26 4 views
13

Ich habe eine .NET 5 Webanwendung mit dem DNX-Framework, und ich möchte 'npm installieren', 'Bower installieren' und andere, wenn ich das Projekt erstellen .'Prebuild' Skripts in project.json nicht ausgeführt

Im Moment bin ich in der Lage, so zu tun, veröffentlichen, ‚prepublish‘ verwenden, aber es scheint nicht mit ‚vorkompilierte‘ zu arbeiten, obwohl ich sah es möglich ist, here

Was ich jetzt:

"scripts": { 
    "prepublish": [ "npm install", "bower install", "tsd install", "gulp min" ] 
} 
+1

Ich habe das gleiche Problem - prebuild funktioniert von einer Befehlszeile "dnu build", aber von einem Visual Studio Build wird es nicht süchtig. –

+0

bestätigt, obwohl ich immer noch auf Beta5 bin, weil der Signalgeber noch nicht erwischt wurde. –

Antwort

0

ich habe nicht für beta5 sehe aber DNX hat eine Dokumentation über die unterstützte Skripte right here.

Grundsätzlich ist dieser:

{ 
    "scripts": { 
    "prebuild": "echo before building", 
    "postbuild": "echo after building", 
    "prepack": "echo before packing", 
    "postpack": "echo after packing", 
    "prerestore": "echo before restoring packages", 
    "postrestore": "echo after restoring packages" 
    } 
} 
11

Ab RC1, you have to "produce outputs" zum Rohr der Build durch dnu:

image

image

+0

Mit welchem ​​Tooling/Framework auch immer im November 2016 auf dem neuesten Stand ist, ist dieses Kontrollkästchen nicht vorhanden. – tjrobinson

+0

Das neueste Werkzeug/Framework ist weitergegangen - DNX ist jetzt veraltet. – Stajs

0

@Stajs's answer korrekt ist, aber ein weiterer Schritt notwendig sein kann, wenn Arbeiten mit TypeScript, was der Fall zu sein scheint h ehe.

Standardmäßig kompiliert Visual Studio die TypeScript-Quellen, bevor es den Build über DNU leitet. Wenn also neue tsd-Typdefinitionen oder andere Referenzen existieren, die nur funktionieren, wenn tsd install zuerst ausgeführt wird, schlägt der Build fehl. Es gibt einen Haken 22.

Um Visual Studio vom Laufen Typoskript transpilation zu verhindern, haben Sie auch zu deaktivieren die Compile TypeScript on build Checkbox auf den Eigenschaften> Build Seite.

Beachten Sie, dass dies nur sinnvoll ist, wenn Sie die TypScript-Kompilierung selbst zu Ihrer Schluck- oder Grunt-Datei hinzufügen.

+0

Mit welcher Tooling/Framework ist im November 2016 am aktuellsten, diese Option ist nicht da. – tjrobinson

11

Ich weiß, dass diese Frage ein bisschen älter ist, aber Google mich dazu führen. Ab dem 19.06.2016 sollten Sie precompile anstelle von prebuild verwenden. Die neue Dokumentation für die Datei project.json ist verfügbar unter https://docs.microsoft.com/pt-br/dotnet/articles/core/tools/project-json#scripts.

Die gültigen Skriptoptionen für die project.json Datei sind:

  • precompile
  • postcompile
  • prepublish
  • postpublish

Und Microsoft hat bereits eine Ankündigung veröffentlicht besagt, dass sie wird wieder auf das alte .csproj Format zurückgesetzt. Sie können darüber auf der MSDN blog lesen.

Die erste Welle dieser Änderung in der Visual Studio passieren wird „15“ RTM: bei jedem beliebigen .NET-Core-Projekt in Visual Studio öffnen, wird es automatisch konvertieren von .xproj, CSPROJ die Vermögenswerte aus der sich bewegenden project.json-Datei in Konfigurationsdateien und die .csproj-Datei.Wir werden auch ein Werkzeug für die Konvertierung von Anwendungen mit den .NET-Befehlszeilen-Tools zur Verfügung stellen.

Verwandte Themen