2010-12-03 57 views
2

尋找與msbuild實施谷歌關閉。 我找到了一些解決方案,但努力讓它工作。 關於如何在構建過程中讀取多個js文件並創建.min版本的任何建議?谷歌關閉和MSBUILD

感謝

編輯:從下面我能夠做出一些改變,以全面落實建議什麼,但在這裏一個簡單的形式,答案就是我寫道:

<ItemGroup> 
    <JSMin Include="$(OutputPath)Scripts\*.js"/> 
    </ItemGroup> 
    <Target Name="AfterBuild" Inputs="@(JSMin)" Outputs="@(JSMin ->'%(Directory)%(Filename).min%(Extension)')"> 
    <Exec Command="java -jar C:\temp\compiler.jar --js %(JSMin.Identity) --js_output_file C:\temp\%(JSMin.Filename).min.js"/> 
    </Target> 

稍後將輸出路徑更改爲動態路徑。

千恩萬謝

回答

6

我沒有看過在谷歌關閉,但你可以運行通過<Exec> task任何命令:

<Project DefaultTargets="build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 
    <Target Name="build"> 
     <Exec Command="echo Hello world"/> 
    </Target> 
</Project> 

編輯:要通過一組文件,運行命令:

<Project DefaultTargets="build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 
    <ItemGroup> 
    <JSMin Include="jquery.js"/> 
    <JSMin Include="somethingelse.js"/> 
    </ItemGroup> 

    <Target Name="build" Inputs="@(JSMin)" Outputs="@(JSMin->'%(Directory)%(Filename).min%(Extension)')"> 
    <Exec Command="java -jar C:\temp\compiler.jar --js %(JSMin.Identity) --js_output_file %(JSMin.Directory)%(JSMin.Filename).min%(JSMin.Extension)"/> 
    </Target> 
</Project> 
+0

是的,工作正常。但我需要遍歷腳本的目錄並創建min文件夾。例如,單個壓縮工作: nologo 2010-12-03 12:15:51