c# – Weyland构建因DurandalAuth 2.0.1而失败
有一个非常壮观的例子,基于DurandalJS,ASP.NET MVC 5支持SPA:
https://durandalauth.azurewebsites.net/ 但是,有一个问题是,Weyland驱动的优化失败,因为Visual Studio的Post-Build事件有如下所示的消息 这很奇怪,因为post build事件是这样的: cd $(ProjectDir) weyland build 从命令行执行时哪个工作正常: 为什么会这样?我在网上搜索,所有我一直在寻找的是一个类似的但是(可能)一个无关的问题,其中一个额外的配置行 "insertRequire: ['main']," [编辑] 我正在使用Visual Studio 2013 Pro Update 2,没有插件. 我使用这个url git克隆了GuraHub上DurandalAuth的最新项目: git clone https://github.com/yagopv/DurandalAuth.git 你可以在这里看到这个项目: 我在visual studio中的post-build事件中使用它: cd $(ProjectDir) weyland build 我的构建的输出可以在这个pastebin中找到: 从Git Clone中可以看出,我正在做的所有事情都没有对原始项目进行任何修改. 解决方法
当你查看你的构建输出时,你会发现几行
你也会找到像这样的行
虽然这些不是关于执行的显示,但它们会导致构建返回失败. 这就是Visual Studio报告构建失败的原因. 编辑 我使用ReSharper做了一些重大的清理工作. 要完全忽略.js文件 – 您可以从weyland-config.js中删除.task.jshint 另外值得一提的是,你的main-built.js没有随着weyland-config.js的发布而变得丑陋. 在第一个.task.uglify中为App / mail-built.js添加一个排除项,并添加一个新的.task.uglify作为最后一个任务. main-built.js的这条路径必须以../开头,因为路径是相对于build文件夹的. 还发现web.config中debug = false时的问题尚未解决. 我的weyland-config.js看起来像这样: exports.config = function(weyland) { weyland.build('main') .task.jshint({ include: 'App/**/*.js',exclude: 'App/main-built.js' }) .task.uglifyjs({ include: ['App/**/*.js','Scripts/durandal/**/*.js'],exclude: 'App/main-built.js' }) .task.rjs({ include:['App/**/*.{js,html}',loaderPluginExtensionMaps:{ '.html':'text' },rjs: { name:'../Scripts/almond-custom',//to deploy with require.js,use the build's name here instead insertRequire: ['main'],//not needed for require baseUrl: 'App',wrap:true,//not needed for require paths: { 'text': '../Scripts/text','durandal': '../Scripts/durandal','plugins': '../Scripts/durandal/plugins','transitions': '../Scripts/durandal/transitions','knockout': '../Scripts/knockout-3.1.0','bootstrap': '../Scripts/bootstrap','jquery': '../Scripts/jquery-2.1.1','jquery.utilities': '../Scripts/jquery.utilities','toastr': '../Scripts/toastr','stashy': '../Scripts/stashy' },inlineText: true,optimize: 'none',pragmas: { build: true },stubModules: ['text'],keepBuildDir: true,out:'App/main-built.js' } }) .task.uglifyjs({ include: ['../App/main-built.js'] }); } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |