0

xwikiでHTMLからマークダウンに変換するにはどうすればよいですか?

shouldRenderHtmlToMarkdown の「java.lang.NoSuchFieldError: fRecognizedFeatures」を取得し、さまざまな形式の html を試しました。

public class HtmlRendererTest
{
    private Converter converter;
    private WikiPrinter printer;

    @Test
    public void testHtmlToMarkdown() throws ComponentLookupException, ConversionException, ParseException, ComponentRepositoryException
    {
        WikiPrinter printer = new DefaultWikiPrinter();
        converter.convert(new StringReader("<h3 id=\"HHeader3\"><span>Header 3</span></h3>"), Syntax.XHTML_1_0, Syntax.MARKDOWN_1_1,  printer);

        System.out.println(printer.toString());
        assertThat(printer.toString(), containsString("###"));
    }

    @Test
    public void testMarkdownToHtml() throws ComponentLookupException, ConversionException, ParseException, ComponentRepositoryException
    {
        WikiPrinter printer = new DefaultWikiPrinter();
        converter.convert(new StringReader("### Header 3"), Syntax.MARKDOWN_1_1, Syntax.ANNOTATED_XHTML_1_0, printer);

        System.out.println(printer.toString());
        assertThat(printer.toString(), containsString("</h3>"));
    }

    @Before
    public void setUp() throws ComponentLookupException, ConversionException
    {
        EmbeddableComponentManager componentManager = new EmbeddableComponentManager();
        componentManager.initialize(this.getClass().getClassLoader());

        converter = componentManager.getInstance(Converter.class);
        printer = new DefaultWikiPrinter();
    }

}
4

1 に答える 1

0

XWiki は現在、Markdown のパーサーのみを提供しているため、自分で Markdown シリアライザーを作成しない限り、shouldRenderHtmlToMarkdown は実際には機能しません。

これは「java.lang.NoSuchFieldError: fRecogniizedFeatures」の内容ではなく、通常、互換性のない jar があることを意味します (1 つのクラスがフィールドを見つけることを期待していますが、ターゲット クラスが期待されるバージョンにありません)。完全なスタック トレースは、どれがどれかを理解するのに役立つ場合があります。

于 2015-07-10T07:58:49.573 に答える