You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Harald Brabenetz (JIRA)" <ji...@codehaus.org> on 2010/04/16 19:04:52 UTC

[jira] Commented: (DOXIA-373) Macro snippet with file option in a multi-pom project

    [ http://jira.codehaus.org/browse/DOXIA-373?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=217983#action_217983 ] 

Harald Brabenetz commented on DOXIA-373:
----------------------------------------

Hi,
I found a hint of the Problem in:
https://svn.apache.org/repos/asf/maven/doxia/doxia/tags/doxia-1.1.1/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractParser.java
At line 89.

Based on this hint i found a temporary workaround (maybe someone other want know it).


1. I create a Class with "public static void main(String[] args)":

    public static void main(final String[] args) {
        if (args.length != 1) {
            System.out.println("[ERROR]: This Class needs exacly one argument: The Projects basedir! " //
                + "The args was: " + Arrays.toString(args));
        }
        // set the SystemProperty
        System.setProperty("basedir", args[0]);
        System.out.println("[INFO]: Set SystemProperty 'basedir' successfull to: " + args[0]);
    }

    
2. And added this Class (e.g.: "com.myProject.MyClass") to the projects pom.xml:

      <plugin>
        <!-- Workaround for Maven Site generation Bug: "Macro snippet with file option in a multi-pom project" -->
        <!-- Bugreport: DOXIA-373 See: http://jira.codehaus.org/browse/DOXIA-373 -->
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>exec-maven-plugin</artifactId>
        <version>1.1.1</version>
        <executions>
          <execution>
            <id>site-plugin-bugfix-workaround</id>
            <phase>pre-site</phase>
            <goals>
              <goal>java</goal>
            </goals>
            <configuration>
              <mainClass>com.myProject.MyClass</mainClass>
              <arguments>
                <argument>${basedir}</argument>
              </arguments>
            </configuration>
          </execution>
        </executions>
      </plugin>

Now this Project works also in multi-pom projects.

regards,
Harald

> Macro snippet with file option in a multi-pom project
> -----------------------------------------------------
>
>                 Key: DOXIA-373
>                 URL: http://jira.codehaus.org/browse/DOXIA-373
>             Project: Maven Doxia
>          Issue Type: Bug
>         Environment: Window XP
>            Reporter: poulfich
>
> The project is a multi pom project. In the main pom project, I declare the other pom like this :
>    <modules>
>         <module>../moduleA</module>
>         <module>../moduleB</module>
>    ...
>    </modules>
> To avoid duplicate code,I use the macro snippet in my documentation in modules A, B and Main. For convenient, the following  syntax : %{snippet|id=myid|file=src/main/java/mypackage/File.java}. 
> When I build the site from each module A or B, all work fine. But when the site was generated from the main module, the snippet seem not work : All  the pages who include a snippet's macros in A or B are not generated. I obtain the same problem if i do a simple site or a site:stage
>   
> The maven site work fine work include pictures and schemas of local documentation (in A et B). I try to use
> the velocity macro and transform MyFile.apt to MyFile.apt.vm like these :
> MyFile.apt.vm
> %{snippet|id=myid|file=${basedir}/src/main/java/mypackage/File.java}.
> It's fail too.
> I use  maven 2.1.0
> Sorry for my poor english

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira