私は、CiviCRMプロジェクトの開発者および管理者です。私たちは、Drupal 8バージョンのCiviCRMを作成しようとしてきましたが、長い道のりを歩んできました。私たちは、プロジェクトの主要なブロッカーを見つけようとして、集団キーボードに対して頭を打ちます。
CiviCRMはしばらくの間Symfonyを使用しており、含まれているバージョンはDrupalに同梱されているものとは異なります。
Drupal 8でCiviCRMをインストールすることはできますが、インストール後は他のDrupalモジュールをインストールできません。
どういうわけか、SymfonyのCiviCRMバージョンがDrupalバージョンの前にロードされ、これが問題を引き起こす状況になると信じています。
Drupalに同梱されているものとは異なるバージョンのSymfonyを含むDrupal 8モジュールを知っている人はいますか?
最近、Ludwigプロジェクトに出会いました。このモジュールでは、拡張するクラスServiceProviderBase
に名前空間を登録できます。
Drupal 8バージョンのCiviCRMモジュールには、CivicrmServiceProvider
クラスを定義するCivicrmServiceProvider.phpファイルと、これregister()
を機能させるためのコンテナー名前空間を追加するメソッドを含めることができますか?
多くのCiviCRMファイルにはuse
、Symfonyで始まるDrupalのようなステートメントがあります。
実際には、CiviCRM CoreをDrupalのdoc_root / librariesフォルダーに配置し、ライブラリモジュールを使用します。
これは、CiviCRM Drupalモジュール8.xバージョンのレポです。誰かがこれまでに得たものを見たいと思っているなら。誰かがこのための魔法のエリクサーを持っているなら、私たちのコミュニティには多くの幸せな人々がいると言えます。もしあなたが私たちを助ける方法を知っているなら、してください。
CiviCRMはインストールされ、CiviCRMページは機能します。機能しないのは、CiviCRMのインストール後、admin / modulesページから他のモジュールをインストールできないことです。私が知る限り、それが壊れている唯一のものです。CiviCRMをインストールした後、Drushでモジュールをインストールしても機能します。
CiviCRMのインストール後に別のモジュールをインストールしようとすると、次のエラーが発生します。
PHP致命的エラー:206行目の/var/www/html/civi-for-d8/core/lib/Drupal/Core/DependencyInjection/YamlFileLoader.phpの未定義メソッドSymfony \ Component \ DependencyInjection \ Definition :: setFactory()の呼び出し
それはDrupal 8.3.5にあります。Drupal 8のCiviCRMをクリーンなDrupal 8.4-devインスタンスにインストールしようとすると、次のエラーが発生します。
Drupal \ Component \ Serialization \ Exception \ InvalidDataTypeException:予約済みインジケータ "@"はプレーンスカラーを開始できません。8行目でスカラーを引用する必要があります(「引数:[@string_translation、@ civicrm.page_state]」の近く)。Drupal \ Component \ Serialization \ YamlSymfony :: decode()(/var/www/html/drupal84/core/lib/Drupal/Component/Serialization/YamlSymfony.phpの40行目)にあります。