【问题标题】:Custom Orchard Module not loading on a site created from Orchard.Web.1.9.1.zip自定义 Orchard 模块未加载到从 Orchard.Web.1.9.1.zip 创建的站点上
【发布时间】:2015-10-09 04:41:29
【问题描述】:

我为 Orchard 创建了一个自定义模块并将其打包为 .nupkg;现在我正在测试部署,但遇到了障碍。

如果我使用 Web 平台安装程序创建一个新的 Orchard 站点并安装我的模块(通过上传 nupkg 文件),一切正常 - 模块的单一功能已启用,并且它在管理菜单中的条目出现。

如果我从源代码构建 Orchard 并安装我的模块(再次通过上传 nupkg 文件),一切都会再次正常运行。

如果我从 Orchard.Web.1.9.1.zip 手动创建一个站点,该站点工作正常,但是当我通过上传 nupkg 安装我的模块时,安装过程没有错误;该模块出现在模块列表中,并且可以启用/禁用其功能而不会报告错误;但是模块的管理菜单条目没有出现,它提供的小部件也没有出现,模块的程序集也没有被添加到 dependencies.xml 中。

注意:我的模块是预编译的(这是我们希望发布的方式),因此它包含一个 bin 文件夹,其中包含其程序集和一些依赖项,但模块文件夹不包含 csproj 文件。因此它应该由 PrecompiledExtensionLoader 加载(至少据我了解http://docs.orchardproject.net/Documentation/Orchard-module-loader-and-dynamic-compilation 应该是这种情况)。

我已经检查过的事情:

  • 比较从 Web Platform Installer 安装的目录和从 Orchard.Web.1.9.1.zip 使用 WinMerge 手动创建的安装,似乎没有任何显着差异。除了 WPI 站点中的 dependencies.xml 中列出的所有模块都是使用 PrecompiledExtensionLoader 加载的,而手动创建的站点上加载的模块都是使用 DynamicExtensionLoader 加载的 - 并且如前所述,我的模块未在 dependencies.xml 中列出在手动创建的网站上。

  • Orchard 错误日志中没有记录任何内容,即使我将日志记录设置为 INFO 级别并尝试卸载并重新安装模块,我也没有看到任何指示错误的消息。

  • 其他模块可以从手动创建站点的图库中加载;尽管这些也由 DynamicModuleLoader 加载。

所以有人知道为什么这个模块会在 WPI 创建的站点和通过编译源创建的站点的情况下加载,而 在从 Orchard.Web 创建的站点上加载.1.9.1.zip 文件。

如果做不到这一点,谁能告诉我如何从模块加载器中获得更详细的注销?

【问题讨论】:

    标签: orchardcms orchardcms-1.9


    【解决方案1】:

    当我遇到这样的事情时,通常与缓存有关。我会让网站在没有您的自定义模块的情况下运行,添加您的模块,然后重新启动网站。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-01-03
      • 1970-01-01
      • 2014-02-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多