軟件包創建者需要依賴另一個軟件包(即Forms Rendering軟件包)或安裝所需的依賴關係的最佳實踐。配置包可從Package Creator中獲得,但如果包中包含大量配置項,則該配置包顯得乏味。軟件包創建者 - 需要依賴關係
回答
Composite C1 Package Creator(v.3.3)的當前版本沒有通過UI指定所需軟件包的功能。我建議你註冊一個功能請求並描述你的需求。您可以使用http://compositec1.codeplex.com/workitem/list/basic
編寫自定義的驗證邏輯
有了一些C#開發,你可以儘管此檢查添加到包「新建項目」。 C1軟件包系統基於'安裝程序插件',它可以在安裝之前驗證狀態並執行安裝工作。您可以編寫這樣一個「安裝程序插件」,並使其驗證所需的C1包的存在,然後將您的插件與您的包關聯。
創建繼承
Composite.Core.PackageSystem.PackageFragmentInstallers.BasePackageFragmentInstaller
覆蓋安裝()和驗證()的一類 - 把你的驗證爲驗證(),並返回一個或多個PackageFragmentValidationResult是您的驗證失敗。讓Install()直接返回。
註冊在包install.xml文件你的新「片段的安裝程序」類 - 增加一個部分這樣的根元素裏面:
<mi:PackageFragmentInstallerBinaries> <mi:Add path="~/MyAssembly.dll"/> </mi:PackageFragmentInstallerBinaries>
path指向了你的組件,您添加它到郵編。
現有
<PackageFragmentInstallers />
元素中,通過使用元素像<mi:Add installerType="MyFragmentInstallers.MyValidator, MyFragmentInstallers"/>
這樣做會使複合C1打電話給你的validate()方法作爲包安裝的一部分添加調用您的類從BasePackageFragmentInstaller
繼承並且如果返回任何驗證消息,則提醒用戶。
檢測,如果一個軟件包安裝
如果你知道一個包的ID,您可以檢查是否已使用Composite.Core.PackageSystem.PackageManager.IsInstalled(Guid packageId)
安裝它。
- 1. 需要依賴關係
- 2. 管理軟件包依賴關係
- 3. 清單R無需安裝軟件包的軟件包依賴關係
- 4. 如何在R軟件包中包含所有軟件包依賴關係?
- 5. JUNG:哪些庫需要依賴關係?
- 6. 正確的Python打包與外部軟件包依賴關係
- 7. VSIX軟件包不包含引用的項目依賴關係
- 8. 依賴關係的nuget依賴關係
- 9. 代碼依賴關係文檔軟件
- 10. Laravel 5.1軟件包開發 - 在開發中加載軟件包依賴關係
- 11. Satis,如何歸檔需要依賴關係?
- 12. Haskell Stack從github安裝軟件包依賴關係
- 13. 用其他軟件包替換MacPorts的依賴關係
- 14. 軟件包依賴關係和初始化
- 15. 使用pip升級軟件包而不升級依賴關係?
- 16. 從Maven aspectj中排除某些軟件包weave依賴關係
- 17. python buildpack中的cloudfoundry軟件包依賴關係
- 18. 在軟件包裝中刪除Postgresql作爲依賴關係
- 19. Kurento軟件包的依賴關係目前破
- 20. R - 在ggplot2上添加軟件包依賴關係的問題
- 21. 下載軟件包的所有dpkg依賴關係
- 22. 如何顯示所有軟件包依賴關係樹
- 23. pip不會安裝我的軟件包的依賴關係
- 24. 缺少Haskell軟件包依賴關係:ffi
- 25. Debian軟件包,依賴關係的安裝
- 26. 使用Composer安裝軟件包依賴關係
- 27. 從源代碼安裝R時的軟件包依賴關係
- 28. 如何使debian軟件包安裝依賴關係
- 29. 作曲家安裝軟件包與開發依賴關係
- 30. 如何設置涼亭軟件包依賴關係?
感謝您的快速響應 - 我相信這個解決方案對於我的目標已經足夠了。 – Kevin