ฉันได้เขียนโมดูลที่กำหนดเองที่ใช้ jwt.transcoder
บริการจาก jwt โมดูล. ในที่สุดก็ให้บริการอื่น:
$ cat mymodule.services.yml
บริการ:
mymodule.jwt:
คลาส: Drupal\mymodule\Services\Jwt
ข้อโต้แย้ง: [ '@jwt.transcoder', '@event_dispatcher' ]
ทุกอย่างเป็นไปอย่างราบรื่นในระหว่างการพัฒนา อย่างไรก็ตาม ไม่มีการติดตั้งโมดูล jwt หรือโมดูลแบบกำหนดเองใหม่ของฉันบนไซต์ของเราก่อนที่ฉันจะเริ่มพัฒนาคุณลักษณะนี้
ฉันเพิ่มทั้งสองโมดูลด้วยตัวเขียน และส่งออกการกำหนดค่าเพื่อเปิดใช้งาน (และตั้งค่าคีย์การเข้ารหัส ฯลฯ) อย่างไรก็ตาม เมื่อฉันไปปรับใช้ ฉันได้รับข้อผิดพลาดในการนำเข้าการกำหนดค่า ซึ่งเห็นได้ชัดว่ามาจากการพึ่งพา jwt.transcoder
บริการซึ่งยังไม่ได้ติดตั้ง ณ จุดนี้
ใน CheckExceptionOnInvalidReferenceBehaviorPass.php บรรทัดที่ 86:
บริการ "mymodule.jwt" มีการพึ่งพาบริการที่ไม่มีอยู่จริง "jwt.transcoder"
ด้วยกระบวนการปรับใช้ของเรา เราสามารถปรับใช้โค้ดเบสได้ครั้งละหนึ่งโค้ดเท่านั้น หมายความว่า ถ้าฉันต้องการนำเข้าการกำหนดค่าเพื่อรับ jwt
ติดตั้งก่อนและนำเข้าการกำหนดค่าอื่นด้วยการเปิดใช้งานโมดูลที่กำหนดเองของฉัน ฉันจะต้องทำการปรับใช้ครั้งที่สองเพื่อรับโค้ดเบสการกำหนดค่าที่สองบนเซิร์ฟเวอร์
มีวิธีใดบ้างที่จะรับการนำเข้าการกำหนดค่าเพื่อติดตั้ง jwt ก่อน จากนั้นตามด้วยโมดูลที่กำหนดเองของฉันในโค้ดเบสเดียว ดังนั้นการพึ่งพานี้จึงได้รับการแก้ไข