Hi,
I have a custom Macro that is bundled as part of a Maven jar build. It creates
a jar file with the /META-INF/plexus/components.xml file in it and all looks
good. The macro class javadoc has @plexus.component
role="org.apache.maven.doxia.macro.Macro" role-hint="source" in it.
I have another Maven project that needs to use that macro in some xdoc. I have
had the built-in snippet macro working but can't get my custom one to work.
I have added the jar containing the components.xml and macro as a dependency to
the other project but in site:site I'm just getting the trace below.
Any ideas - I'm sure it's really simple.
Many thanks,
Dave
[ERROR] Error parsing xxxxxx\logging\src\site\xdoc\doc.xml: line [-1] Macro
execution failed: Macro not found: source
org.apache.maven.doxia.parser.ParseException: Macro execution failed: Macro not
found: source
at
org.apache.maven.doxia.parser.AbstractXmlParser.parse(AbstractXmlParser.java:61)
at org.apache.maven.doxia.module.xdoc.XdocParser.parse(XdocParser.java:99)
at org.apache.maven.doxia.DefaultDoxia.parse(DefaultDoxia.java:59)
at
org.apache.maven.doxia.siterenderer.DefaultSiteRenderer.renderDocument(DefaultSiteRenderer.java:342)
at
org.apache.maven.doxia.siterenderer.DoxiaDocumentRenderer.renderDocument(DoxiaDocumentRenderer.java:46)
at
org.apache.maven.doxia.siterenderer.DefaultSiteRenderer.renderModule(DefaultSiteRenderer.java:269)
at
org.apache.maven.doxia.siterenderer.DefaultSiteRenderer.render(DefaultSiteRenderer.java:101)
at org.apache.maven.plugins.site.SiteMojo.renderLocale(SiteMojo.java:129)
at org.apache.maven.plugins.site.SiteMojo.execute(SiteMojo.java:96)
at
org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:579)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:498)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegmentForProject(DefaultLifecycleExecutor.java:265)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:191)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:149)
at org.apache.maven.DefaultMaven.execute_aroundBody0(DefaultMaven.java:223)
at
org.apache.maven.DefaultMaven.execute_aroundBody1$advice(DefaultMaven.java:304)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:1)
at
org.apache.maven.embedder.MavenEmbedder.execute_aroundBody2(MavenEmbedder.java:904)
at
org.apache.maven.embedder.MavenEmbedder.execute_aroundBody3$advice(MavenEmbedder.java:304)
at org.apache.maven.embedder.MavenEmbedder.execute(MavenEmbedder.java:1)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:176)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:63)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:52)
Caused by: org.apache.maven.doxia.macro.MacroExecutionException: Macro not
found: source
at
org.apache.maven.doxia.module.xdoc.XdocParser.handleEndTag(XdocParser.java:481)
at
org.apache.maven.doxia.parser.AbstractXmlParser.parseXml(AbstractXmlParser.java:92)
at
org.apache.maven.doxia.parser.AbstractXmlParser.parse(AbstractXmlParser.java:53)
... 22 more
Caused by: org.apache.maven.doxia.macro.manager.MacroNotFoundException: Cannot
find macro with id = source
at
org.apache.maven.doxia.macro.manager.DefaultMacroManager.getMacro(DefaultMacroManager.java:48)
at
org.apache.maven.doxia.parser.AbstractParser.executeMacro(AbstractParser.java:69)
at
org.apache.maven.doxia.module.xdoc.XdocParser.handleEndTag(XdocParser.java:477)