2013-03-06 105 views
6

考慮以下鏢Web應用程序:如何使用dart軟件包部署dart web應用程序?

import "dart:html"; 
// assume this is a custom library hosted somewhere on github, i.e. 
// there is a pubspec.yaml entry 
// 
// dependencies: 
// my_hello: 
//  git: http://github.com/foo/my_hello.git 
// 
import "package:my_hello/my_hello.dart" as hello; 

main() { 
    query("#message").innerHtml = hello.message; 
} 

如何某處部署在Web服務器上(例如,作爲github上頁),使得它可以被用作Dartium基於鏢web應用程序?

  1. 我必須在Web服務器上創建一個目錄packages嗎?
  2. 我必須將包my_hello.dart複製到網絡服務器嗎?

    packages/my_hello/...

    還是Dartium能夠解決給定pubspec.yaml的依賴?

+0

http://stackoverflow.com/questions/24672090展示瞭如何配置和使用dart2dart。 – 2014-07-24 11:35:25

回答

6

此刻,您需要部署packages文件夾以及您的代碼。 Dartium不進行使用pubspec.yaml

目前,有一個dart2dart工具,它做了類似的事情,以dart2js - 樹搖,縮小,並把所有的代碼到一個單一的部署源文件。谷歌羣組上有dartbug issue指令和recent discussion

這可能會構成pub deploy場景的一部分,該場景將用於打包應用以部署到Web服務器上。

參見:what could be a deployment strategy with pubspec on dart 和:Creating a Javascript deployment set from Dart2js output

更新Dartbug 6006是目前正在處理,並說,它像工作如下:

它會在複製一切「web」插入到部署目錄中,在所有入口點上運行dart2dart和dart2js,並清理Dart源文件。這將產生一個可以在沒有任何額外步驟的情況下提供的目錄。

0

這裏有一個utiliy腳本把軟件包複製一個Web應用程序依賴於部署目錄 - 看Gist

2

我個人一直使用rsync的,因爲它的簡單和快速

cd web 
rsync -RLr . ../../deploy/ 
3

使用:

$ pub build [--no-minify] 

使用酒館生成,當你」準備好部署您的Web應用程序。運行pub build時,它會爲當前包及其所有依賴項生成資產,並將其放入一個名爲build的新目錄中。

來源:

https://plus.google.com/+SethLadd/posts/ZVw5EFX355z 
相關問題