[
http://jira.codehaus.org/browse/MSITE-409?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=182327#action_182327
]
Jason Smith edited comment on MSITE-409 at 7/2/09 6:27 PM:
-----------------------------------------------------------
The problem appears to be the following code in SiteStageMojo. It is not
specific to Linux, and occurs on both Windows and Linux.
String outputRelativePath = PathTool.getRelativePath(
stagingDirectory.getAbsolutePath(), new File(
outputDirectory, "dummy.html" ).getAbsolutePath() );
project.setUrl( outputRelativePath + "/" + structureProject );
If the staging folder is:
C:\ws\target\staging
and the output-directory dummy file is:
C:\ws\target\staging\base-parent-pom\utils-core\dummy.html
then the relative path is ../..
For each additional inherited parent POM, you get an additional '..'
The desired relative path is actually just "..", and I think this is always the
case. But I could be wrong. But it works for me in all cases, and I am
running many projects against this modification.
So for staging, at least, this works for my case:
//String outputRelativePath = PathTool.getRelativePath(
stagingDirectory.getAbsolutePath(), new File(
// outputDirectory, "dummy.html" ).getAbsolutePath() );
project.setUrl( "../" + structureProject );
You have to replace outputRelativePath in a couple of places.
I am hoping that someone can take a look at this and verify whether or not this
is a fix, and maybe roll it out to the plugin.
was (Author: jasonsmith):
The problem appears to be the following code in SiteStageMojo.
String outputRelativePath = PathTool.getRelativePath(
stagingDirectory.getAbsolutePath(), new File(
outputDirectory, "dummy.html" ).getAbsolutePath() );
project.setUrl( outputRelativePath + "/" + structureProject );
If the staging folder is:
C:\ws\target\staging
and the output-directory dummy file is:
C:\ws\target\staging\base-parent-pom\utils-core\dummy.html
then the relative path is ../..
For each additional inherited parent POM, you get an additional '..'
The desired relative path is actually just "..", and I think this is always the
case. But I could be wrong. But it works for me in all cases, and I am
running many projects against this modification.
So for staging, at least, this works for my case:
//String outputRelativePath = PathTool.getRelativePath(
stagingDirectory.getAbsolutePath(), new File(
// outputDirectory, "dummy.html" ).getAbsolutePath() );
project.setUrl( "../" + structureProject );
You have to replace outputRelativePath in a couple of places.
I am hoping that someone can take a look at this and verify whether or not this
is a fix, and maybe roll it out to the plugin.
> Incorrect URLs in multi-module project
> --------------------------------------
>
> Key: MSITE-409
> URL: http://jira.codehaus.org/browse/MSITE-409
> Project: Maven 2.x Site Plugin
> Issue Type: Bug
> Components: multi module
> Affects Versions: 2.0
> Reporter: Benson Margulies
>
> I have a top-level pom and some modules. One of the modules serves as a
> parent for most, but not all, of the rest.
> Thus, for most, the parent is ../parent, and for that the parent is the
> top-level project itself.
> I ran:
> mvn site:stage -DstagingDirectory=/Users/benson/stage
> It takes a very long time.
> All of my child links came out incorrectly: e.g:
> <a
> href="../../Users/benson/x/trunk/greenhouse/etrog/../../../../hudson.basistech.net/home/projects/etrog">RLPJ
> Buildtools</a>
> There aren't distinct subdirectories in the staged dir for those of my
> modules that use the parent. Actually, now that I look, I see that the ones
> that parent into ../parent are subdirectories of 'parent' instead of
> subdirectories of the top-level. But the links are still all wrong.
--
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