簡介html
weexpack 是 weex 新一代的工程開發套件,是基於weex快速搭建應用原型的利器。它可以幫助開發者經過命令行建立weex工程,添加相應平臺的weex app模版,並基於模版從本地、GitHub 或者 weex 應用市場安裝插件,快速打包 weex 應用並安裝到手機運行,對於具備分享精神的開發者而言還可以建立weex插件模版併發布插件到weex應用市場。html5
weexpack 所提供的命令大體可分爲三組,分別是:java
打包命令node
weexpack create — 建立 weex 工程項目。linux
weexpack platform add/remove — 安裝/移除 weex 應用模版,默認模版支持 weex bundle 調試和插件機制。android
weexpack platform list — 查看已安裝的平臺模版及版本。ios
weexpack platform run - 打包應用並安裝到設備運行。git
插件使用者命令github
weexpack plugin add/remove — 安裝/移除 weex 插件,支持從本地、GitHub 或者 weex 應用市場安裝插件。web
weexpack plugin list — 查看已安裝的插件及版本。
插件開發者命令
weexpack plugin create - 生成weex插件模版,主要是配置文件和必需的目錄。
weexpack plugin publish - 發佈插件到weex插件市場。
安裝
環境要求:
須要node6.0+
) 參考:http://www.cnblogs.com/winsoncheung/p/6547923.html首先,全局安裝 weex-pack 命令:
$ npm install -g weexpack@0.3.12-beta
或者 在 clone 的 weexpack 根目錄下執行:
$ npm install
注: 目前最新的weexpack版本是0.3.12的測試版, 正式版是0.3.11, 但正式版在MacOS上沒法添加platform, 會出現 "Error:Unexpected token <<" 的錯誤.
解決辦法就是從新安裝0.3.12-beta版本, 在terminal執行一次:
$ npm install -g weexpack@0.3.12-beta
相信阿里會很快解決這個問題. ^_^
打包及插件使用
打包主要過程以下圖所示,其中插件操做是打包過程的可選項,不是必須的。
1. 建立工程
在terminal中進入你須要放置工程目錄的文件夾中, 例如放在桌面上, 執行以下命令:
$ cd Desktop
$ weexpack create appName
此時 在桌面上就已經建好了項目工程文件夾, 目錄以下:
platforms: 平臺模板目錄
plugins: 插件下載目錄
src: 業務代碼目錄
經過 create 命令建立的工程默認不包含 ios 和 android 工程模版,建立完成以後就能夠切換到appName目錄下並安裝依賴。
$ cd appName && npm install
等一段時間, 當完成後 目錄中或多一個node_modules的文件夾, 這個文件夾中的內容就是要添加的依賴。
2. 添加工程模板
添加應用模版,官方提供的模版默認支持 weex bundle 調試和插件機制,注意模版名稱均爲小寫,模版被安裝到platforms目錄下。
添加模板時terminal仍處於項目工程的根目錄下。
>>添加android模版:
$ weexpack platform add android
添加完成後Android模板目錄以下:
>> 添加iOS模板:
$ weexpack platform add ios
添加完成後iOS模板目錄以下:
對於已安裝的模版可使用weexpack platform list命令查看:
若是想要刪除某個不須要的平臺可使用 weexpack platform remove移除,好比window平臺用戶是不須要ios模版的,可用以下命令移除。
$ weexpack platform remove android
3. 安裝 weex 插件(可選項)
添加想要使用的插件,支持從本地或者 weex 應用市場安裝插件。
>>添加想要使用的插件,支持從本地或者 weex 應用市場安裝插件。
$ weexpack plugin add path/to/plugin
>> 從插件市場添加插件,例如 weex-chart。
$ weexpack plugin add weex-chart
模版的weexplugin是插件安裝的目標工程。以安卓爲例,其目錄以下:
weexplugin ├── build.gradle // 插件編譯腳本,工具自動維護 ├── libs ├── proguard-rules.pro ├── src │ └── main │ ├── AndroidManifest.xml // 插件android manifest配置文件 │ ├── java │ │ ├── // 插件src安裝目錄 │ │ └── com │ │ └── alibaba │ │ └── weex │ │ └── plugin │ │ ├── ConfigXmlParser.java // 配置文件解析器 │ │ ├── PluginConfig.java // 外部接口 │ │ ├── PluginEntry.java // 插件描述 │ │ └── PluginManager.java // 插件管理器 │ └── res // 插件資源安裝目錄 │ ├── drawable │ ├── values │ │ └── strings.xml │ └── xml │ └── config.xml // 插件配置文件,PluginManager解析配置文件加載插件
對於已安裝的插件可使用 weexpack plugin list 命令查看。
查看已安裝插件
$ weexpack plugin list
若是想要刪除某個不須要的插件可使用 weexpack plugin remove 移除,好比weex-chart
移除插件,例如weex-chart
$ weexpack plugin remove weex-chart
完成以上步驟並we代碼放在src目錄下,就能夠打包運行了,打包過程當中可能要下載依賴和編譯工具,這會是個較爲耗時的過程,安裝運行須要打開模擬器或者鏈接設備。
打包運行android應用
$ weexpack run android
你能夠更改項目目錄下的android.config.json
文件名則以本地文件的方式加載bundle,url則以遠程的方式加載bundle 若是以本地方式指定bundle .we文件請放到src目錄。
打包運行ios應用
模擬器運行
$ weexpack run ios
構建ipa包
$ weexpack build ios
構建包的過程當中,將會提示讓您輸入CodeSign(證書)
,Profile(provisioning profile)
,AppId
,只有輸入真實的這些信息才能成功打包。 其他如AppName,和入口weex bundle文件能夠編輯項目目錄下的ios.config.json配置。 打完包成功以後,能夠在/playground/build/ipa_build/目錄下獲取ipa文件
*注:證書須要預先安裝到keychain中,在keychain中點擊右鍵獲取證書id(證書名稱),provisioning profile文件(mobileprovision)須要獲取UUID,進入目錄 能夠看到mobileprovision_UUID.sh文件,此文件能夠獲取到UUID
mobileprovision_UUID.sh用法以下: $ ./mobileprovision_UUID.sh \*mobileprovision
參數(*mobileprovision)爲provisioning profile文件路徑
打包html5平臺:
$ weexpack build web
這樣你能夠把打包後的資源上傳到cdn服務器,而後上線你的web項目。
在 html5 平臺運行:
$ weexpack run web
本博客插件部分摘自:https://www.npmjs.com/package/weexpack
南心芭比: 熱愛分享, 收穫快樂~