[jboss-dev-forums] [Design of JBoss Build System] - Re: Using jdocbook

nbhatia do-not-reply at jboss.com
Wed Aug 15 23:47:19 EDT 2007


Steve, I have now switched to the jdocbook-style plugin. However the docs are not clear on how the two plugins work together. A simple example would be very helpful.

Anyway I have setup two maven projects right now: 1) andromda-docbook-style and 2) andromda-tutorial-java. POMs for the two projects are shown below:


  | <project xmlns="http://maven.apache.org/POM/4.0.0"
  |          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  |          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  | 
  |     <modelVersion>4.0.0</modelVersion>
  | 
  |     <groupId>org.andromda</groupId>
  |     <artifactId>andromda-docbook-style</artifactId>
  |     <version>3.2</version>
  |     <packaging>jdocbook-style</packaging>
  | 
  |     <name>AndroMDA DocBook Style</name>
  |     <description>AndroMDA DocBook Style</description>
  | 
  |     <build>
  |         <plugins>
  |             <plugin>
  |                 <groupId>org.jboss.maven.plugins</groupId>
  |                 <artifactId>maven-jdocbook-style-plugin</artifactId>
  |                 <extensions>true</extensions>
  |             </plugin>
  |         </plugins>
  |     </build>
  | 
  |     <repositories>
  |         <repository>
  |             <id>jboss</id>
  |             <name>JBoss Repository</name>
  |             <url>http://repository.jboss.org/maven2</url>
  |         </repository>
  |     </repositories>
  |     <pluginRepositories>
  |         <pluginRepository>
  |             <id>jboss</id>
  |             <name>JBoss Repository</name>
  |             <url>http://repository.jboss.org/maven2</url>
  |         </pluginRepository>
  |     </pluginRepositories>
  | 
  | </project>
  | 


  | <project xmlns="http://maven.apache.org/POM/4.0.0"
  |          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  |          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  | 
  |     <modelVersion>4.0.0</modelVersion>
  | 
  |     <groupId>org.andromda</groupId>
  |     <artifactId>andromda-tutorial-java</artifactId>
  |     <version>3.2</version>
  |     <packaging>jdocbook</packaging>
  | 
  |     <name>AndroMDA Tutorial for Java</name>
  |     <description>AndroMDA Tutorial for Java</description>
  | 
  |     <dependencies>
  |         <dependency>
  |             <groupId>org.andromda</groupId>
  |             <artifactId>andromda-docbook-style</artifactId>
  |             <version>3.2</version>
  |             <type>jdocbook-style</type>
  |         </dependency>
  |     </dependencies>
  | 
  |     <build>
  |         <plugins>
  |             <plugin>
  |                 <groupId>org.jboss.maven.plugins</groupId>
  |                 <artifactId>maven-jdocbook-plugin</artifactId>
  |                 <version>2.0.0</version>
  |                 <extensions>true</extensions>
  |                 <configuration>
  |                     <sourceDocumentName>Master.xml</sourceDocumentName>
  |                     <formats>
  |                         <format>
  |                             <formatName>pdf</formatName>
  |                             <stylesheetResource>classpath:/xslt/fopdf.xsl</stylesheetResource>
  |                             <finalName>andromda-tutorial-java.pdf</finalName>
  |                         </format>
  |                         <format>
  |                             <formatName>html</formatName>
  |                             <stylesheetResource>classpath:/xslt/html.xsl</stylesheetResource>
  |                             <finalName>index.html</finalName>
  |                         </format>
  |                     </formats>
  |                     <options>
  |                         <xincludeSupported>false</xincludeSupported>
  |                     </options>
  |                 </configuration>
  |             </plugin>
  |         </plugins>
  |     </build>
  | 
  |     <repositories>
  |         <repository>
  |             <id>jboss</id>
  |             <name>JBoss Repository</name>
  |             <url>http://repository.jboss.org/maven2</url>
  |         </repository>
  |     </repositories>
  |     <pluginRepositories>
  |         <pluginRepository>
  |             <id>jboss</id>
  |             <name>JBoss Repository</name>
  |             <url>http://repository.jboss.org/maven2</url>
  |         </pluginRepository>
  |     </pluginRepositories>
  | 
  | </project>
  | 

The andromda-docbook-style project runs fine. It packages my style sheets in a jar under /xslt. However when I run andromda-tutorial-java, I get the following error. What am I doing wrong?


  | [INFO] Scanning for projects...
  | [INFO] ----------------------------------------------------------------------------
  | [INFO] Building AndroMDA Tutorial for Java
  | [INFO]    task-segment: [install]
  | [INFO] ----------------------------------------------------------------------------
  | [INFO] [jdocbook:resources]
  | [INFO] unpacking dependency resource [D:\m2\repository\org\andromda\andromda-docbook-style\3.2\andromda-docbook-style-3.2.jdocbook-style] to staging-dir [D:\ProjectsTest\DocBook\andromda-tutorial-java\target\staging]
  | [INFO] Expanding: D:\m2\repository\org\andromda\andromda-docbook-style\3.2\andromda-docbook-style-3.2.jdocbook-style into D:\ProjectsTest\DocBook\andromda-tutorial-java\target\staging
  | [INFO] [jdocbook:generate]
  | [INFO] ------------------------------------------------------------------------
  | [ERROR] FATAL ERROR
  | [INFO] ------------------------------------------------------------------------
  | [INFO] could not locate resource [classpath:/xslt/fopdf.xsl]
  | [INFO] ------------------------------------------------------------------------
  | [INFO] Trace
  | java.lang.IllegalArgumentException: could not locate resource [classpath:/xslt/fopdf.xsl]
  |         at org.jboss.maven.plugins.jdocbook.gen.util.ResourceHelper.requireResource(ResourceHelper.java:31)
  |         at org.jboss.maven.plugins.jdocbook.gen.format.BasicFormatHandler.resolveTransformationStylesheet(BasicFormatHandler.java:189)
  |         at org.jboss.maven.plugins.jdocbook.gen.format.BasicFormatHandler.buildTransformer(BasicFormatHandler.java:165)
  |         at org.jboss.maven.plugins.jdocbook.gen.format.BasicFormatHandler.render(BasicFormatHandler.java:126)
  |         at org.jboss.maven.plugins.jdocbook.GenerationMojo.process(GenerationMojo.java:95)
  |         at org.jboss.maven.plugins.jdocbook.AbstractDocBookMojo.execute(AbstractDocBookMojo.java:207)
  |         at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:420)
  |         at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:539)
  |         at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:480)
  |         at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:459)
  |         at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:311)
  |         at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:278)
  |         at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:143)
  |         at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:330)
  |         at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:123)
  |         at org.apache.maven.cli.MavenCli.main(MavenCli.java:272)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  |         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:597)
  |         at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
  |         at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
  |         at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
  |         at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
  | 

Note: I think usage.apt for jdocbook-style plugin has a typo:


  | <project>
  |     <groupId>com.mygroup</groupId>
  |     <artifact>myproject</artifactId>
  |     <type>jdocbook-style</type>
  |     ...
  | </project>
  | 

Shouldn't the "type" element be replaced by


  |     <packaging>jdocbook-style</packaging>
  | 

"type" element is valid only in a dependency.

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4074652#4074652

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4074652



More information about the jboss-dev-forums mailing list