軟體包可以導入和導出儲存庫內容。 例如,您可以使用軟體包來安裝新功能、在實例之間傳輸內容,以及備份儲存庫內容。
可從以下頁訪問和/或維護包:
Package Manager,您可使用它來管理本機AEM例項中的封裝。
軟體散發(Software Distribution),此集中式伺服器同時持有公開可用的套件和您公司專用的套件。公開套件可包含修補程式、新功能、檔案等。
您可以在軟體包管理器、軟體分發和檔案系統之間傳輸軟體包。
軟體包是以檔案系統序列化(稱為「vault」序列化)形式保存儲存庫內容的zip檔案。 這提供了簡單易用和編輯的檔案和檔案夾表示法。
套件包含使用篩選器選取的頁面內容和專案相關內容。
軟體包還包含保險儲存元資訊,包括過濾器定義和導入配置資訊。 封裝中可包含其他內容屬性(不用於封裝擷取),例如說明、視覺影像或圖示;這些屬性僅用於內容包消費者和資訊用途。
套件代表建立套件時的內容目前版本。 它們不包含AEM保留在儲存庫中的任何舊版內容。
您可以對包執行以下操作或對包執行以下操作:
包定義由各種類型的資訊組成:
您可以編輯各種「包設定」以定義包描述、相關錯誤、依賴項和提供程式資訊等方面。
當建立或編輯軟體包時,軟體包設定對話框可通過編輯按鈕使用,並提供三個頁籤進行配置。 進行任何更改後,按一下OK保存這些更改。
欄位 | 說明 |
---|---|
名稱 | 包的名稱。 |
群組 | 要向其添加包的組的名稱,用於組織包。 鍵入新組的名稱,或選擇現有組。 |
版本 | 用於自訂版本的文字。 |
說明 | 套件的簡短說明。 HTML標籤可用於格式化。 |
縮圖 | 隨包清單一起顯示的表徵圖。 按一下「瀏覽」以選取本機檔案。 |
欄位 | 說明 | 格式/範例 |
---|---|---|
名稱 | 提供程式的名稱。 | AEM Geometrixx |
URL | 提供者的URL。 | https://www.aem-geometrixx.com |
連結 | 包特定於提供程式頁的連結。 | https://www.aem-geometrixx.com/mypackage.html |
需要 |
|
|
AC 處理 | 指定導入包時如何處理包中定義的訪問控制資訊:
預設值為Ignore。 |
|
欄位 | 說明 | 格式/範例 |
---|---|---|
已測試 | 此套件的產品名稱和版本已定位至或與相容。 | AEM6 |
修正錯誤/問題 | 一個文本欄位,允許您列出使用此軟體包修復的錯誤的詳細資訊。 請將每個錯誤列在單獨的行上。 | bug-nr摘要 |
取決於 | 列出當需要其它包時,需要遵守的相依性資訊,以便使當前包按預期運行。 此欄位在使用修補程式時很重要。 | groupId:name:version |
取代 | 此包替換的已過時包的清單。 在安裝之前,請檢查此軟體包是否包含過時軟體包中的所有必要內容,以便不覆蓋任何內容。 | groupId:name:version |
篩選器標識要包含在包中的儲存庫節點。 過濾器定義指定以下資訊:
篩選器可包含零個或多個規則。 如果未定義規則,則套件會包含根路徑下的所有內容。
您可以為套件定義一或多個篩選定義。 使用多個篩選器來包含來自多個根路徑的內容。
下表說明這些規則並提供範例:
規則類型 | 說明 | 範例 |
---|---|---|
加入 | 您可以定義路徑,或使用規則運算式來指定要包括的所有節點。 包含目錄將:
|
/libs/sling/install(/)。*)? |
排除 | 您可以指定路徑或使用規則運算式來指定要排除的所有節點。 排除目錄將排除該目 錄以及該目錄中的所有檔案和資料夾(即整個子樹)。 |
/libs/wcm/foundation/components(/)。*)? |
一個套件可包含多個篩選定義,因此不同位置的節點可輕鬆結合為一個套件。
在您首次建立包時最常定義包過濾器,但以後也可以編輯它們(在此之後應重建包)。
您可將螢幕擷取畫面附加至您的套件,以視覺化方式呈現內容的外觀;例如,提供新功能的螢幕擷取。
您也可以將圖示附加至套件,以提供套件所含內容的快速參考視覺呈現。 然後,這將顯示在包清單中,可幫助您輕鬆標識包或包類。
由於套件可包含圖示,下列慣例用於正式套件:
為避免混淆,請為您的套件使用描述性圖示,而不要使用其中一個官方圖示。
正式的修補程式套件:
正式的AEM安裝或擴充功能套件:
正式功能套件:
Package Manager會管理您本機AEM安裝上的套件。 為分配了必要的權限後,您可以使用包管理器執行各種操作,包括配置、構建、下載和安裝包。 要配置的關鍵元素包括:
若要授與使用者建立、修改、上傳和安裝套件的權利,您必須在下列位置為使用者提供適當的權限:
有關更改權限的說明,請參閱設定權限。
要建立新包定義,請執行以下操作:
在「AEM歡迎」畫面上,按一下「套件」(Packages)(或從「工具」(Tools)主控台連按兩下「套件」(Packages))。
然後選擇Package Manager。
按一下「建立包」。
如果實例包含許多包,則可能存在資料夾結構,以便在建立新包之前導航到所需的目標資料夾。
在對話方塊中:
輸入:
群組名稱
目標群組(或資料夾)名稱。 群組旨在協助您組織套件。
如果組不存在,將為其建立資料夾。 如果將組名留空,則它將在主包清單(「首頁」>「包」)中建立包。
封裝名稱
新包的名稱。 選擇描述性名稱,以協助您(和其他人)輕鬆識別套件內容。
版本
用於表示版本的文本欄位。 這將附加至套件名稱,以形成zip檔案的名稱。
按一下OK建立軟體包。
AEM會在適當的群組檔案夾中列出新的套件。
按一下要開啟的表徵圖或包名稱。
如有需要,您可在稍後階段返回本頁面。
按一下編輯以編輯包設定。
在這裡,您可以新增資訊和/或定義特定設定;例如,這些錯誤包括說明、表徵圖、相關錯誤和添加提供程式詳細資訊。
完成編輯設定後,按一下「確定」。
視需要將Screenshots新增至套件。 建立套件時,有一個例項可供使用,若有需要,請使用Package Screepth from sidekick新增更多。
在螢幕擷取區域中按兩下影像元件,新增影像,然後按一下確定,以新增實際影像。
定義Package Filters,方法是從側鍵拖曳Filter Definition的例項,然後連按兩下以開啟以進行編輯:
指定下列設定:
根路
徑要封裝的內容;這可以是子樹的根。
RulesRules
是可選的;對於簡單的套件定義,不需要指定包含或排除規則。
如有需要,您可以定義Include或Exclude規則,以精確定義套件內容。
使用+符號新增規則,或使用-符號移除規則。 規則會根據其順序套用,以使用Up和Down按鈕,視需要定位規則。
然後按一下「確定」以儲存篩選。
您可以視需要使用任意數量的篩選定義,但必須小心確保這些定義不發生衝突。 使用預覽確認包內容。
要確認軟體包將包含的內容,可以使用預覽。 這會執行建立程式的乾式執行,並列出實際建立時要新增至封裝的所有項目。
您現在可以Build您的套件。
目前並非必要建立套件,而是可在稍後的時間點完成。
軟體包通常與建立軟體包定義同時構建,但您可以在稍後返回生成或重建軟體包。 如果儲存庫中的內容已更改,則此功能非常有用。
在建立套件之前,預覽套件的內容會很有用。 若要這麼做,請按一下「預覽」。
從Package Manager(按一下包表徵圖或名稱)開啟包定義。
按一下Build。 對話方塊會要求您確認您確實要建立套件。
當您重建包時,當將覆寫包內容時,這特別重要。
按一下「確定」。AEM將建立套件,並列出新增至套件的所有內容。 完成時,AEM會顯示已建立套件的確認,並(當您關閉對話方塊時)更新套件清單資訊。
在建立套件後,如有需要,可重新包裝它。
重新包裝會變更封裝資訊- 而不會變更封裝內容。套件資訊是縮圖、說明等,換言之,您可使用套件設定對話方塊編輯的一切(以開啟此按一下編輯)。
重新包裝的主要使用案例是準備套件時。 例如,您可能已有現有的套件,並決定與其他人共用。 您想要新增縮圖並新增說明。 您可以重新建立整個套件,而不需使用其所有功能(這可能需要一些時間,並承擔套件不再與原始套件相同的風險),只要重新包住它,然後新增縮圖和說明即可。
從Package Manager(按一下包表徵圖或名稱)開啟包定義。
按一下「編輯」,並視需要更新「封裝設定」。 ](#package-settings)[按一下確定保存。
按一下重新包覆,對話框將要求確認。
要查看或編輯有關包定義的資訊:
在「包管理器」中,導航到要查看的包。
按一下要查看的包的包表徵圖。 這將開啟包頁,其中列出有關包定義的資訊:
您也可以從此頁面編輯和執行套件上的特定動作。
可用的按鈕將取決於軟體包是否已構建。
如果已構建包,請按一下Contents ,將開啟一個窗口並列出包的整個內容:
建立套件後,您可以檢視內容:
在「包管理器」中,導航到要查看的包。
按一下要查看的包的包表徵圖。 這將開啟包頁面,其中列出有關包定義的資訊。
要查看內容,請按一下Contents ,將開啟一個窗口並列出包的整個內容:
要執行安裝的乾式運行,請按一下「測試安裝」。 確認操作後,將開啟一個窗口並列出結果,如同執行了安裝:
本節說明如何使用Package Manager從AEM下載套件至您的檔案系統。
在「AEM歡迎」畫面上,按一下「套件」,然後選取「套件管理員」。
導覽至您要下載的套件。
按一下您要下載之套件的zip檔案名稱(加底線)所形成的連結;例如export-for-offline.zip
。
AEM會將套件下載至您的電腦(使用標準瀏覽器下載對話方塊)。
套件上傳可讓您從檔案系統上傳套件至AEM Package Manager。
要上載包:
導航至軟體包管理器。 然後,將包上傳到您希望其中的組資料夾。
按一下Upload Package。
檔案
您可以直接鍵入檔案名,或使用瀏覽……對話方塊,從您的本機檔案系統中選取所需的套件(選取後,按一下「確定」)。
強制上傳
如果已存在具有此名稱的包,您可以按一下此命令強制上載(並覆蓋現有包)。
按一下OK ,以便上載新包並列在「包管理器」清單中。
若要讓內容可供AEM使用,請務必安裝套件。
在安裝軟體包之前,您可能希望驗證其內容。 由於軟體包可以修改/apps
和/或添加、修改和刪除ACL下的覆蓋檔案,因此在安裝前驗證這些更改通常很有用。
驗證機制可檢查包的下列特性:
這些選項將在下面詳述。
驗證 OSGi 封裝匯入
已檢查項目
此驗證會檢查所有JAR檔案(OSGi包)的包,提取其manifest.xml
(其中包含所述OSGi包所依賴的版本化從屬關係),並驗證AEM實例將所述從屬關係導出為正確的版本。
報告方式
AEM實例無法滿足的任何版本化從屬關係都列在「包管理器」的活動日誌中。
錯誤狀態
如果不滿足相依性,則包中包含這些相依性的OSGi捆綁包將不會啟動。 這會導致應用程式部署中斷,因為任何依賴未啟動的OSGi套件的應用程式部署都會無法正常運作。
錯誤解決方法
要解決由於未滿足要求的OSGi捆綁包而導致的錯誤,需要調整捆綁包中具有未滿足要求的導入的相關性版本。
驗證覆蓋
已檢查項目
此驗證會決定所安裝的套件是否包含已覆蓋在目標AEM例項中的檔案。
例如,假設/apps/sling/servlet/errorhandler/404.jsp
有現有覆蓋,則包含/libs/sling/servlet/errorhandler/404.jsp
的套件,如此會變更/libs/sling/servlet/errorhandler/404.jsp
的現有檔案。
報告方式
此類覆蓋在「包管理器」的活動日誌中有說明。
錯誤狀態
錯誤狀態表示套件嘗試部署已覆蓋的檔案,因此套件中的變更將被覆蓋覆蓋(因此「隱藏」),而不會生效。
錯誤解決方法
要解決此問題,/apps
中覆蓋檔案的維護人員必須檢閱/libs
中覆蓋檔案的變更,並視需要將變更整合至覆蓋(/apps
),然後重新部署覆蓋檔案。
請注意,驗證機制無法協調重疊內容是否已正確整合至覆蓋檔案。 因此,即使進行了必要的變更,此驗證仍會繼續報告衝突。
驗證 ACL
已檢查項目
此驗證會檢查要新增哪些權限、如何處理這些權限(合併/取代),以及目前權限是否會受到影響。
報告方式
這些權限在包管理器的活動日誌中有說明。
錯誤狀態
不能提供任何明確錯誤。 驗證只會指出是否將添加或影響任何新的ACL權限。
錯誤解決方法
使用驗證提供的資訊,可以在CRXDE中查看受影響的節點,並根據需要在包中調整ACL。
建議您最好不要將套件影響AEM提供的ACL,因為這可能會導致意外的產品行為。
可以通過兩種不同的方式驗證軟體包:
在上傳套件後,但在安裝之前,應一律進行驗證。
通過包管理器進行包驗證
在https://<server>:<port>/crx/packmgr
開啟包管理器
在清單中選擇包,然後從標題中選擇More下拉式清單,然後從下拉菜單中選擇Validate。
這應在上傳內容套件後,但在安裝套件之前完成。
在隨後出現的模態對話框中,使用複選框選擇驗證類型,然後按一下驗證開始驗證。 或者,按一下取消。
然後,會執行所選的驗證。 結果顯示在「包管理器」的活動日誌中。
透過HTTP POST要求進行封裝驗證
POST請求採用下列形式。
https://<host>:<port>/crx/packmgr/service.jsp?cmd=validate&type=osgiPackageImports,overlays,acls
type
參數可以是任何逗號分隔的無序清單,包括:
osgiPackageImports
overlays
acls
如果未傳遞,則type
的值預設為osgiPackageImports
。
以下是使用cURL執行套件驗證的範例。
如果使用cURL,請執行類似下列的語句:
curl -v -X POST --user admin:admin -F file=@/Users/SomeGuy/Desktop/core.wcm.components.all-1.1.0.zip 'http://localhost:4502/crx/packmgr/service.jsp?cmd=validate&type=osgiPackageImports,overlays,acls'
請求的驗證會執行,回應會以JSON物件傳回。
對驗證HTTP POST要求的回應將是具有驗證結果的JSON物件。
上傳套件後,您必須安裝內容。 要安裝軟體包內容並使其正常工作,它必須同時具備:
載入至AEM(從您的檔案系統](#uploading-packages-from-your-file-system)上傳或從軟體散發下載)[
已安裝
安裝套件可覆寫或刪除現有內容。 只有在您確定套件不會刪除或覆寫您需要的內容時,才能上傳套件。
若要查看套件的內容或影響,您可以:
不修改任何內容,即可對軟體包執行測試安裝:
開啟包(按一下包表徵圖或名稱),然後按一下測試安裝。
請參閱套件內容清單:
開啟包並按一下Contents。
在安裝軟體包之前,將建立一個快照軟體包以包含將被覆蓋的內容。
卸載軟體包時,將重新安裝此快照。
如果您要安裝數位資產,您必須:
首先,停用WorkflowLauncher。
使用OSGi控制台的「元件」菜單選項來停用com.day.cq.workflow.launcher.impl.WorkflowLauncherImpl
。
接著,在安裝完成後,重新啟動WorkflowLauncher。
停用WorkflowLauncher可確保Assets匯入工具架構不會(無意中)在安裝時操縱資產。
在包管理器中,導航到要安裝的包。
Install按鈕顯示在尚未安裝的軟體包的一側。
或者,您也可以按一下軟體包表徵圖開啟軟體包,以訪問Install按鈕。
按一下Install啟動安裝。 對話方塊會要求確認,並列出所有正在進行的變更。 完成後,按一下對話框上的關閉。
安裝軟體包後,軟體包旁會顯示「Installed」一詞。
有另一種方式可將套件上傳並安裝至您的例項。 在檔案系統中,您的jar和license.properties
檔案附帶有crx-quicksart
資料夾。 您需要在crx-quickstart
下建立名為install
的資料夾。 然後,您會有類似的功能:<aem_home>/crx-quickstart/install
在此安裝資料夾中,您可以直接添加包。 它們會自動上傳並安裝在您的例項上。 完成後,您可以在「包管理器」中查看包。
如果實例正在運行,將包添加到install
資料夾將直接啟動上載並安裝實例。 如果實例未運行,則您放在install
資料夾中的軟體包將按字母順序在啟動時安裝。
您也可以先執行此動作,然後再第一次啟動執行個體。 為此,您需要手動建立crx-quickstart
資料夾,在資料夾下建立install
資料夾,並將包放在此處。 然後,當您第一次啟動實例時,這些軟體包將按字母順序安裝。
AEM可讓您解除安裝套件。 此操作將恢復在軟體包安裝前立即建立的快照中受影響的儲存庫內容。
在安裝時,將建立包含將被覆蓋的內容的快照包。
卸載軟體包時,將重新安裝此軟體包。
要從「包管理器」清單中刪除包:
軟體包中安裝的檔案/節點為not。
在Tools控制台中,展開Packages資料夾,在右窗格中顯示包。
按一下您要刪除的套件,以反白顯示它,然後執行下列任一動作:
AEM會要求確認您要刪除套件。 按一下確定確認刪除。
如果此軟體包已安裝,則installed內容將not刪除。
複製套件的內容以將其安裝到發佈實例:
在包管理器中,導航到要複製的包。
按一下要複製的包的表徵圖或名稱以展開它。
在工具欄的More下拉式選單中,選擇Replicate。
Package Share是公開提供來共用Content-Packages的集中式伺服器。
已由軟體分發替換。
Software Distribution是專為簡化AEM套件的搜尋和下載而設計的新使用者介面。
如需詳細資訊,請參閱軟體散發檔案。
目前,AEM套件管理程式無法與「軟體散發」搭配使用,您可將套件下載至本機磁碟。