package org.asciidoctor.converter.internal;

import org.asciidoctor.Asciidoctor;
import org.asciidoctor.converter.spi.ConverterRegistry;

import java.util.ServiceLoader;

public class ConverterRegistryExecutor {

    private static ServiceLoader<ConverterRegistry> converterRegistryServiceLoader = ServiceLoader
            .load(ConverterRegistry.class);

    private Asciidoctor asciidoctor;

    public ConverterRegistryExecutor(Asciidoctor asciidoctor) {
        this.asciidoctor = asciidoctor;
    }

    public void registerAllConverters() {
        for (ConverterRegistry converterRegistry : converterRegistryServiceLoader) {
            converterRegistry.register(asciidoctor);
        }
    }
}

@@ -210,152 +210,8 @@
  %7B%0A%0A
-    private static ServiceLoader%3CConverterRegistry%3E converterRegistryServiceLoader = ServiceLoader%0A            .load(ConverterRegistry.class);%0A%0A
     
@@ -393,24 +393,161 @@
 verters() %7B%0A
+        ServiceLoader%3CConverterRegistry%3E converterRegistryServiceLoader = ServiceLoader%0A                .load(ConverterRegistry.class);%0A%0A
         for 

Apply same handling of ServiceLoader in ConverterRegistryExecutor as in ExtensionRegistryExecutor. See #292