【问题标题】:Cannot access created plugins through the builder plugin on OctoberCMS 419 Build无法通过 OctoberCMS 419 Build 上的构建器插件访问创建的插件
【发布时间】:2018-04-11 17:08:07
【问题描述】:

我最近将本地存储的 OctoberCMS 项目转移到服务器上。由于服务器运行 PHP 5,我不得不将项目降级到 419 的 OctoberCMS 版本。让它在服务器上运行后,我尝试通过构建器插件访问任何已安装的插件,当我单击其中一个时builder插件,它输出以下错误:

"syntax error, unexpected ':', expecting ';' or '{'"

此错误发生在 “vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php”的第 154 行。

我的意思是我相当确定我通过 Composer 为 CMS 安装了 PHP 5,但看起来该文件是基于 PHP 7 的。关于为什么会发生这种情况的任何想法?如果是因为 PHP 版本问题,那我该如何解决呢?抱歉,如果我看起来含糊不清。这几天我一直在想办法。

【问题讨论】:

  • hmm 你能分享你的composer.json 详细信息它的require 部分数据。
  • "require": { "php": ">=5.5.9", "october/rain": "1.0.419", "october/system": "1.0.419", "october/backend": "1.0.419", "october/cms": "1.0.419", "laravel/framework": "5.1.*", "wikimedia/composer-merge-plugin": "dev-master" },我搜索了供应商文件夹,似乎有更多的composer.json文件,但除非我运行它们,否则我认为它们不会处于活动状态。
  • 是的,我看到代码是 php 7.0 的,虽然 october/rain 应该使用 dbal version 2.4 并且那个版本甚至没有那个文件,所以作曲家更新肯定有问题。

标签: php doctrine octobercms


【解决方案1】:

嗯,我看到october/rain 的版本是1.0.419,它使用"doctrine/dbal": "~2.4",,但不幸的是它没有更新到旧版本。在那个 php 版本更新期间。

您可以从安装中尝试一件事,只需删除 vendors 文件夹和 modules 文件夹

  1. 确保如果您更改模块中的任何 core code,请先备份该文件,然后删除该文件夹。
  2. 备份您的数据库
  3. 如果需要也可以配置文件。

删除vendors 文件夹和modules 文件夹

之后remove your composer lock文件

用这个内容 https://github.com/octobercms/library/blob/v1.0.419/composer.json 替换你的 package.json 文件,它是内置的 .419

现在从那个目录运行composer intsall

它将根据正确的依赖关系安装所有新文件。

[当前问题可能是由于某些依赖项没有更新到旧版本]

现在只需恢复您的所有config file [不确定可能不需要,因为这些过程不会触及所有东西,所以只需检查是否需要]

现在使用此命令进行数据库迁移 - php artisan october:up

这应该会启动您的网站。

如果您发现任何问题,请发表评论。

【讨论】:

  • 为迟到的回复道歉。一旦我对所有内容进行了排序,我希望在下周的某个时候尝试你的解决方案。感谢您发帖并帮助我,我会让您知道发生了什么。
  • 很高兴听到这个消息,但请确保备份每个文件和数据库,因为此操作会擦除您的数据.. 我们不希望这样.. 祝你好运
  • 我会的。谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-12-10
  • 2020-08-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多