【问题标题】:Symfony ~2.4 composer update swiftmailer.mailer.default.transport.real dependency exceptionSymfony ~2.4 composer 更新 swiftmailer.mailer.default.transport.real 依赖异常
【发布时间】:2014-05-15 05:30:02
【问题描述】:

作曲家更新后,我开始收到错误消息:

服务“swiftmailer.mailer.default.transport.real”依赖于不存在的服务“swiftmailer.transport.buffer”

经过一番研究,我找到了解决方案:

他们提供的基本上是设置 swiftmail 参数spool: {type: memory} 或手动创建服务描述

我已将 sppol 添加到所有配置中:config.yml、config_test.yml、config_dev.yml 但这没有帮助。然后我在我的一个 bundle services.yml 中添加了条目

swiftmailer.transport.simplemailinvoker:
    class: Swift_Transport_SimpleMailInvoker

swiftmailer.transport.eventdispatcher:
    class: Swift_Events_SimpleEventDispatcher

swiftmailer.transport.real:
    class: Swift_Transport_MailTransport
    arguments: [@swiftmailer.transport.simplemailinvoker, @swiftmailer.transport.eventdispatcher]

但这并没有解决我的问题。

我的作曲家文件如下所示:

http://pastebin.com/Wsfx22Lg

有什么建议可以解决这个问题吗?

【问题讨论】:

    标签: symfony composer-php swiftmailer


    【解决方案1】:

    @Yury Pliashkou's版本回答:

    <?xml version="1.0" encoding="UTF-8"?>
    
    <container xmlns="http://symfony.com/schema/dic/services"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">
    
        <services>
    
            <service id="swiftmailer.transport.simplemailinvoker" class="Swift_Transport_SimpleMailInvoker" />
    
            <service id="swiftmailer.transport.eventdispatcher" class="Swift_Events_SimpleEventDispatcher" />
    
            <service id="swiftmailer.replacementfactory" class="Swift_StreamFilters_StringReplacementFilterFactory" />
    
            <service id="swiftmailer.transport.buffer" class="Swift_Transport_StreamBuffer">
                <argument type="service" id="swiftmailer.replacementfactory"></argument>
            </service>
    
            <service id="swiftmailer.transport.real" class="Swift_Transport_MailTransport">
                <argument type="service" id="swiftmailer.transport.simplemailinvoker"></argument>
                <argument type="service" id="swiftmailer.transport.eventdispatcher"></argument>
            </service>
    
        </services>
    
    </container>
    

    【讨论】:

      【解决方案2】:

      试试我的变种,它对我有用:

      swiftmailer.transport.simplemailinvoker: 
          class: Swift_Transport_SimpleMailInvoker
      
      swiftmailer.transport.eventdispatcher: 
          class: Swift_Events_SimpleEventDispatcher
      
      swiftmailer.replacementfactory:
          class: Swift_StreamFilters_StringReplacementFilterFactory
      
      swiftmailer.transport.buffer:
          class: Swift_Transport_StreamBuffer
          arguments: [@swiftmailer.replacementfactory]
      
      swiftmailer.transport.real:
          class: Swift_Transport_MailTransport 
          arguments: [@swiftmailer.transport.simplemailinvoker, @swiftmailer.transport.eventdispatcher]
      

      【讨论】:

        【解决方案3】:

        尝试在你的 service.yml 中添加这个:为我工作

        swiftmailer.transport.simplemailinvoker: 
            class: Swift_Transport_SimpleMailInvoker
        
        swiftmailer.transport.eventdispatcher: 
            class: Swift_Events_SimpleEventDispatcher
        
        swiftmailer.transport.buffer: 
            class: Swift_Transport_StreamBuffer
        
        swiftmailer.transport.real:
            class: Swift_Transport_MailTransport 
            arguments: [@swiftmailer.transport.simplemailinvoker, @swiftmailer.transport.eventdispatcher]
        

        我使用了上一个答案的一部分并进行了工作。希望这对你有用

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-04-21
          • 2018-04-06
          • 2015-12-10
          • 1970-01-01
          • 1970-01-01
          • 2016-05-29
          相关资源
          最近更新 更多