Come migliorare questo evento di Visual Studio post-generazione che utilizza ajaxmin.exe

StackOverflow https://stackoverflow.com/questions/4044913

  •  27-09-2019
  •  | 
  •  

Domanda

Attualmente sto usando Visual Studio 2010 eventi post-generazione per minify miei file JavaScript. Il problema è che ogni volta che aggiunge un nuovo file JavaScript devo aggiornare il post evento di compilazione. Quello che voglio fare è rendere la sceneggiatura un po 'più flessibile.

Elenco struttura:

\ Scripts \

  • Script1.debug.js
  • Script2.debug.js
  • Script3.debug.js

Ecco stato attuale del mio script:

ajaxmin.exe "$(ProjectDir)Scripts\Script1.debug.js" -out "$(ProjectDir)Scripts\Script1.js" -clobber
ajaxmin.exe "$(ProjectDir)Scripts\Script2.debug.js" -out "$(ProjectDir)Scripts\Script2.js" -clobber
ajaxmin.exe "$(ProjectDir)Scripts\Script3.debug.js" -out "$(ProjectDir)Scripts\Script3.js" -clobber

Voglio questo script per trovare il file minify e uscita ogni * .debug.js a .js *. Come posso ottenere questo?

Script1.debug.js -> Script1.js
Script2.debug.js -> Script2.js
Script3.debug.js -> Script3.js

È stato utile?

Soluzione

Non utilizzare un post evento di compilazione. Dopo aver installato lo strumento, un compito MSBuild è stato aggiunto che corre il minifier automaticamente un file .js nel progetto. Avete bisogno di un po 'di chirurgia minore al file di progetto. I dettagli sono spiegati in questo blog dopo .

Altri suggerimenti

Prova questo:

@echo off

for /r "js\" %%i IN (*.js) do (
    call :Sub %%~fi
)

:Sub
set debug=%*
set release=%debug:.debug=%
AjaxMin.exe -hc "%debug%" -o "%release%" -clobber

Trovate tutte javascript (* .js) i file nella cartella "js \" quindi rimuovere ".debug" dal nome del file (in realtà sostituirlo con stringa nulla) ed eseguire AjaxMin

Creare un file di script batch per fare il compito e chiamare il file batch dal vostro evento Postbuild.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top