Script Minification and Continuous Integration with MSBuild

后端 未结 3 1278
被撕碎了的回忆
被撕碎了的回忆 2021-02-01 06:42

On a recent project I have been working on in C#/ASP.NET I have some fairly complicated JavaScript files and some nifty Style Sheets. As these script resources grow in size it

相关标签:
3条回答
  • 2021-02-01 07:12

    Not a perfect answer, but if you're using MVC4 they've built this in as a new feature. When running a Debug configuration, it outputs individual files with comments and such but when you switch to Release, it will automatically bundle, minify, and change in page references to the minified files. You can setup separate bundles for, say, jquery and your own js. This works with CSS and JS files.

    http://www.asp.net/mvc/tutorials/mvc-4/bundling-and-minification

    If MVC4 doesn't work for you, you can also find packages on Nuget that can help such as this:

    https://www.nuget.org/packages?q=minify

    0 讨论(0)
  • 2021-02-01 07:15

    Another JS (and CSS!) compression library for MSBuild:

    http://www.codeplex.com/YUICompressor

    This is a .NET port of the java-based Yahoo! compressor.

    0 讨论(0)
  • 2021-02-01 07:34

    The MSBuildCommunityTasks Project has a few MSBuild tasks that may do what you are looking for including Merge and JSCompress.

    You could add these into your MSBuild project in the AfterBuild target to allow the project to perform this action every time the project is built and nothing would ever be out of sync. Your web application could then reference the compacted version for run but the developers would edit the full versions.

    Nothing else would be needed on the server except the MSBuild community tasks assembly. You can put this assembly in your own source tree and reference from there and your CI build should get that assembly and everything it needs when it builds.

    0 讨论(0)
提交回复
热议问题