[ https://issues.apache.org/jira/browse/HADOOP-7394?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13053547#comment-13053547 ]
Jongwook Woo commented on HADOOP-7394: -------------------------------------- It is because Forrest 0.9 does not have 'fop-0.20.5.jar' that has the class 'org/apache/fop/messaging/MessageHandler' You may check them out, for example, in my Forrest 0.9: jongwook@localhost:~/apache/apache-forrest-0.9/lib/core$ ls *fop* cocoon-fop-block.jar In my Forrest 0.8: jongwook@localhost:~/apache/apache-forrest-0.8/lib/core$ ls *fop* cocoon-fop-block-2.2.0-dev.jar fop-0.20.5.jar fop-0.20.5.jar.license.txt > Chinese documentation can't be built with Forrest 0.9 > ----------------------------------------------------- > > Key: HADOOP-7394 > URL: https://issues.apache.org/jira/browse/HADOOP-7394 > Project: Hadoop Common > Issue Type: Bug > Components: documentation > Affects Versions: 0.23.0 > Reporter: Aaron T. Myers > Priority: Minor > > Running {{ant cn-docs}} with Forrest 0.8 will work. Running the same thing > with Forrest 0.9 prints the following error: > {noformat} > Exception in thread "main" java.lang.NoClassDefFoundError: > org/apache/fop/messaging/MessageHandler > at > org.apache.cocoon.serialization.FOPSerializer.configure(FOPSerializer.java:122) > at > org.apache.avalon.framework.container.ContainerUtil.configure(ContainerUtil.java:201) > at > org.apache.avalon.excalibur.component.DefaultComponentFactory.newInstance(DefaultComponentFactory.java:289) > at > org.apache.avalon.excalibur.pool.InstrumentedResourceLimitingPool.newPoolable(InstrumentedResourceLimitingPool.java:655) > at > org.apache.avalon.excalibur.pool.InstrumentedResourceLimitingPool.get(InstrumentedResourceLimitingPool.java:371) > at > org.apache.avalon.excalibur.component.PoolableComponentHandler.doGet(PoolableComponentHandler.java:198) > at > org.apache.avalon.excalibur.component.ComponentHandler.get(ComponentHandler.java:381) > at > org.apache.avalon.excalibur.component.ExcaliburComponentSelector.select(ExcaliburComponentSelector.java:215) > at > org.apache.cocoon.components.ExtendedComponentSelector.select(ExtendedComponentSelector.java:268) > at > org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.setSerializer(AbstractProcessingPipeline.java:311) > at > org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline.setSerializer(AbstractCachingProcessingPipeline.java:171) > at > org.apache.cocoon.components.treeprocessor.sitemap.SerializeNode.invoke(SerializeNode.java:120) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) > at > org.apache.cocoon.components.treeprocessor.sitemap.SelectNode.invoke(SelectNode.java:103) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:47) > at > org.apache.cocoon.components.treeprocessor.sitemap.PreparableMatchNode.invoke(PreparableMatchNode.java:131) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) > at > org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:143) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) > at > org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:93) > at > org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:235) > at > org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:177) > at > org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:254) > at > org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:118) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) > at > org.apache.cocoon.components.treeprocessor.sitemap.SelectNode.invoke(SelectNode.java:98) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) > at > org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:143) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) > at > org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:93) > at > org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:235) > at > org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:177) > at > org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:254) > at org.apache.cocoon.Cocoon.process(Cocoon.java:699) > at org.apache.cocoon.bean.CocoonWrapper.getPage(CocoonWrapper.java:514) > at org.apache.cocoon.bean.CocoonBean.processTarget(CocoonBean.java:499) > at org.apache.cocoon.bean.CocoonBean.process(CocoonBean.java:356) > at org.apache.cocoon.Main.main(Main.java:321) > Caused by: java.lang.ClassNotFoundException: > org.apache.fop.messaging.MessageHandler > at java.net.URLClassLoader$1.run(URLClassLoader.java:202) > at java.security.AccessController.doPrivileged(Native Method) > at java.net.URLClassLoader.findClass(URLClassLoader.java:190) > at java.lang.ClassLoader.loadClass(ClassLoader.java:307) > at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) > at java.lang.ClassLoader.loadClass(ClassLoader.java:248) > ... 38 more > {noformat} -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira