plugin.xml 解析說明
plugin
說明:
是plugin.xml的主體。
示例:
<plugin xmlns="http://apache.org/cordova/ns/plugins/1.0"
xmlns:android="http://schemas.android.com/apk/res/android"
id="my-plugin-id"
version="1.0.2">
引數:
id: 外掛的唯一標識。實際專案中一般加上包名或網址名來命名id。比如:eclipse的tomcat外掛是這樣命名的:org.eclipse.tomcat。
name: 外掛的名稱,可以不唯一。
version: 外掛版本號。
provider-name: 外掛開發商的名稱,可以寫上作者或公司的名稱。
class: 外掛類的名稱,前面加上包名。
xmlns:該外掛的名稱空間,http://apache.org/cordova/ns/plugins/1.0。如果該檔案包含來自其他名稱空間,如要加入到Android中的情況下,AndroidManifest.xml檔案標記的XML,這些名稱空間也應包括在該元素。
基礎標籤
示例:
<plugin ...> <name>Camera</name> <description>Cordova Camera Plugin</description> <license>Apache 2.0</license> <keywords>cordova,camera</keywords> <repo>https://github.com/apache/cordova-plugin-camera</repo> <author>blackcat</author> </plugin>
引數:
name:用於指定外掛的名稱。
description:用於指定外掛的描述。
license:用於指定外掛的許可證。
keywords:元素的內容包含逗號分隔的關鍵字來描述外掛 。
repo:外掛源
author:外掛作者的姓名。
engines
說明:
元素的子元素指定此外掛支援的基於apache cordova的框架的版本。對於其目標專案不滿足引擎約束的任何外掛,cli都將使用非零程式碼中止。如果未指定標記,則cli將嘗試盲目地安裝到指定的cordova專案目錄中。
建議在外掛的package.json檔案中指定平臺、外掛和cli依賴項。
示例:
<plugin ...> <engines> <engine name="cordova" version=">=7.1.0"/> <engine name="cordova-android" version=">=6.3.0" /> </engines> </plugin>
engines元件也可以使用'>','>='等,以避免重複指定模糊匹配,並且當底層的平臺被更新,以減少維護。
在
引數:
name:引擎的名稱。
version:版本號對應的框架存在,才能安裝。這裡是指定框架的版本號。
scriptSrc僅適用於自定義的框架 Required該指令碼檔案,告訴plugman自定義架構的版本。理想情況下,這個檔案應該是你的外掛目錄的頂級目錄中。
platform:僅適用於自定義的框架 需要該平臺的框架支援。您可以使用萬用字元*說支援所有的平臺,像'android的一個管道字元指定多個
自定義框架例如:
<engines>
<engine name="my_custom_framework" version="1.0.0" platform="android" scriptSrc="path_to_my_custom_framework_version"/>
<engine name="another_framework" version=">0.2.0" platform="ios|android" scriptSrc="path_to_another_framework_version"/>
<engine name="even_more_framework" version=">=2.2.0" platform="*" scriptSrc="path_to_even_more_framework_version"/>
</engines>
runtime
說明:
這裡是宣告外掛執行時需要的jar包,
示例:
plugin.jar是本外掛自身的jar包
<runtime>
<library name="plugin.jar">
<export name="*"/>
</library>
<library name="lib\mysql-connector-java-3.0.9-stable-bin.jar"/>
</runtime>
requires
說明:
在requires域中定義了該外掛所要使用的依賴外掛。
現在兩項就夠了,隨著開發的不斷深入這裡將會新增更多對其它外掛的引用。
示例:
實際專案中的requires設定,它要用到draw2d和gef外掛來畫圖、用於外掛的幫助系統來建立建自己的幫助文件。
<requires>
<import plugin="org.eclipse.ui"/>
<import plugin="org.eclipse.core.runtime"/>
<import plugin="org.eclipse.core.resources"/>
<import plugin="org.eclipse.draw2d"/>
<import plugin="org.eclipse.gef"/>
<import plugin="org.eclipse.help"/>
<import plugin="org.eclipse.help.ui"/>
<import plugin="org.eclipse.help.appserver"/>
<import plugin="org.eclipse.help.webapp"/>
</requires>
引數:
extension
說明:
在
point="org.eclipse.ui.actionSets",設定了本外掛的擴充套件點為何,
actionSets是指Eclipse的選單、選單項和工具欄按鈕的擴充套件點
示例:
<extension point="org.eclipse.ui.actionSets">
<actionSet label="Sample Action Set" visible="true" id="plugintest.actionSet">
<menu label="樣本選單(&M)" id="sampleMenu">
<separator name="sampleGroup"></separator>
</menu>
<action
label="樣本操作(&S)"
icon="icons/sample.gif"
class="myplugin.actions.SampleAction"
tooltip="提示文字"
menubarPath="sampleMenu/sampleGroup"
toolbarPath="sampleGroup"
id="myplugin.actions.SampleAction">
</action>
</actionSet>
</extension>
引數:
label:是顯示的名稱。
id其唯一識別符號,只要保證在本plugin.xml檔案中不存在重複的id就行了。
visible:指設定的按鈕或選單是否顯示,如果設定成false,則不顯示。注意:要看visible設定的效果要將“透檢視”關掉再重新開啟。
menu
說明: