Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio 2015 如何从VS2015将ASP.NET 5 Aurelia应用程序部署到Azure_Visual Studio 2015_Asp.net Core_Aurelia_Jspm_Azure Deployment - Fatal编程技术网

Visual studio 2015 如何从VS2015将ASP.NET 5 Aurelia应用程序部署到Azure

Visual studio 2015 如何从VS2015将ASP.NET 5 Aurelia应用程序部署到Azure,visual-studio-2015,asp.net-core,aurelia,jspm,azure-deployment,Visual Studio 2015,Asp.net Core,Aurelia,Jspm,Azure Deployment,我正在尝试使用Visual Studio 2015中的Web deploy([右键单击]->发布)将基于的应用程序部署到Microsoft Azure 但我不能让解聚剂起作用 我已将project.json文件中的prepublish设置更改为: "prepublish": [ "npm install", "gulp bundle" ] 但这只会使VisualStudio中的发布过程失败。从控制台运行gulp bundle可以正常工作 因此,我的下一次尝试是删除所有预发布任务,手动运行打包,

我正在尝试使用Visual Studio 2015中的Web deploy([右键单击]->发布)将基于的应用程序部署到Microsoft Azure

但我不能让解聚剂起作用

我已将
project.json
文件中的
prepublish
设置更改为:

"prepublish": [ "npm install", "gulp bundle" ]
但这只会使VisualStudio中的发布过程失败。从控制台运行
gulp bundle
可以正常工作

因此,我的下一次尝试是删除所有
预发布
任务,手动运行
打包
,然后发布。这允许发布过程完成,但azure上的web应用程序从未加载,最终给我一个超时

我认为这可能与
jspm_packages
文件夹有关,我尝试基于将这些包包含在
Web.xproj
文件中,但这导致了以下错误:

502 - Web server received an invalid response while acting as a gateway or proxy server.
更新 我已尝试将
prepublish
脚本设置回原处,并从控制台运行
dnu publish
。运行时不会出现问题的ad会在
\bin\output\wwwroot
文件夹中生成所有必要的输出。但是,当从VisualStudio中的Publish contect菜单操作运行时,相同的过程失败;没有生成任何输出

只是把它加在这里,以防它对这个问题有所启发

更新2 好的,我注意到
dnu publish
命令的关闭消息是

Using command 'web' as entry point for web.config
然后一便士掉了下来。Aurelia骨架导航解决方案在“project.json”中定义了以下命令:

"web": "Microsoft.AspNet.Server.Kestrel --server.urls=http://*:9000/",
当然,这在Azure中不起作用。因此,我删除了
--server.url
选项,删除了
预发布
脚本,再次从
项目.json
中删除,瞧,应用程序运行

…未绑定

无论如何,自从开始输入这个问题以来,已经发生了很多变化,但我仍然想知道:

  • 当我定义了
    prepublish
    任务时,为什么从Visual Studio发布失败

  • 最重要的是,我如何将捆绑的Aurelia应用程序发布到azure

  • 更新3 当从控制台运行runt时,绑定工作。我想在从
    project.json
    中删除
    --server.url
    设置后,我从未尝试过发布捆绑应用程序

    那么我们现在在哪里? 使用“
    ”预发布“:[“打包打包”]
    发布到Azure仍然失败。这是Aurelia导航框架附带的
    gulpfile.js

    require('require-dir')('build/tasks');
    
    当运行
    预发布
    任务时,Visual Studio会在
    watch.js
    的以下行中抛出错误:

    console.log(`File ${event.path} was ${event.type}, running tasks...`);  
    
    这是非常不可理解的,因为
    bundle
    任务不调用
    watch
    。曾经从控制台运行
    gulp bundle
    ,工作正常

    因此,VS2015似乎正在从
    build/tasks
    文件夹加载每个任务。 我已经尝试对
    watch.js
    文件进行了完整的注释,但是我只发现了以下错误:
    预发布失败,代码为1

    如果您对我为什么不能使用
    prepublish
    任务发布有任何帮助或想法,我们将不胜感激。

    若要使用Web Deploy(右键单击>发布)将发布到Azure,我们必须对project.json进行两项更改

    添加一个预发布条目,该条目将安装NPM依赖项(否则gulp将失败),安装JSPM包,并与gulp捆绑

    "prepublish": [ "npm install", "jspm install -y", "gulp bundle" ]
    
    从web命令中删除
    --server.url=http://*:9000/
    ,因为Azure不支持该地址。这是正确的条目:

    "web": "Microsoft.AspNet.Server.Kestrel"
    

    有了这两项更改,Web Deploy将使用Visual Studio Community 2015 Update 2对本地IIS和Azure Web应用程序进行部署。

    您使用的是typescript还是ECMA骨架?抱歉,忘了提及:我使用的是ES2106。我已更新了我的问题以反映它。发布应用程序后显示web.config文件您是否能够在本地发布到IIS?@ShaunLuttin我已成功发布到azure,无需捆绑和
    预发布
    任务;在发布Hanks之前,我必须手动运行gulp任务,我会尝试一下。事实上,我们已经成功地与AppVeyor建立了部署,这无疑是一条路要走,但这个问题需要解决:)