我是模块新手,想要将冗长的.psm1文件拆分成多个文件以保持可维护性。这样做的最佳方式是什么?
我使用点源工作,但我怀疑有一种更好的方法来创建一个包含多个文件的模块。
目前我的文件结构是:
Logger/ (module directory)
|
-- Logger.psd1 (module manifest)
|
-- Logger.psm1 (main functions exported from module)
|
-- Configuration.ps1 (configuration-related functions, exported from module)
|
-- Private/ (directory)
|
-- SharedFunctions.ps1 (functions called by Logger.psm1 and
| Configuration.ps1, not exported)
|
-- ModuleState.ps1 (variables that record the module configuration,
used by all other script files)
我通过使用点源链接文件来实现这一目标:
. $PSScriptRoot\Configuration.ps1
以包含Configuration.ps1文件中的函数; . $PSScriptRoot\Private\SharedFunctions.ps1
以包含Private \ SharedFunctions.ps1中的函数; . $PSScriptRoot\ModuleState.ps1
以包含ModuleState.ps1中记录模块配置的变量。这有效,但看起来很脆弱。是否有更好的方法在模块中拆分文件,可能使用清单文件?