加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – Weyland构建因DurandalAuth 2.0.1而失败

发布时间:2020-12-15 22:03:40 所属栏目:百科 来源:网络整理
导读:有一个非常壮观的例子,基于DurandalJS,ASP.NET MVC 5支持SPA: https://durandalauth.azurewebsites.net/ 但是,有一个问题是,Weyland驱动的优化失败,因为Visual Studio的Post-Build事件有如下所示的消息 这很奇怪,因为post build事件是这样的: cd $(Project
有一个非常壮观的例子,基于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

你可以在这里看到这个项目:
https://github.com/yagopv/durandalauth

我在visual studio中的post-build事件中使用它:

cd $(ProjectDir)
weyland build

我的构建的输出可以在这个pastebin中找到:
http://pastebin.com/ezpTEPk7

从Git Clone中可以看出,我正在做的所有事情都没有对原始项目进行任何修改.

解决方法

当你查看你的构建输出时,你会发现几行

ERR! jshint Found 52 issues while linting ….

你也会找到像这样的行

WARN: Dropping unused ….

虽然这些不是关于执行的显示,但它们会导致构建返回失败.

这就是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']
    });
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读