You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Roman Platonov (JIRA)" <ji...@codehaus.org> on 2007/12/02 02:10:57 UTC

[jira] Commented: (MIDEA-102) CLONE -still broken - Module filepath is generated incorrectly

    [ http://jira.codehaus.org/browse/MIDEA-102?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_115630 ] 

Roman Platonov commented on MIDEA-102:
--------------------------------------

Hello!
My fix is more simple, but it's works...

class AbstractIdeaMojo:

    protected String toRelative( File basedir, String absolutePath )
    {
        String relative = null;
        String convertedBasedirAbsolutePath = convertDriveLetter( basedir.getAbsolutePath() );
        String convertedAbsolutePath = convertDriveLetter( absolutePath );

        String fileSeparator = System.getProperty("file.separator");
        String upPrefix = "";
        while (convertedBasedirAbsolutePath.indexOf(fileSeparator) > 0) {
            if (convertedAbsolutePath.startsWith(convertedBasedirAbsolutePath)
                    && convertedAbsolutePath.length() > convertedBasedirAbsolutePath.length()) {
                relative = upPrefix + convertedAbsolutePath.substring(convertedBasedirAbsolutePath.length() + 1);
                break;
            } else {
                convertedBasedirAbsolutePath = convertedBasedirAbsolutePath.substring(0,
                        convertedBasedirAbsolutePath.lastIndexOf(fileSeparator));
                upPrefix += "../";
            }
        }
        if (relative == null) {
            relative = convertedAbsolutePath;
        }

        relative = StringUtils.replace( relative, "\\", "/" );

        if ( getLog().isDebugEnabled() )
        {
            getLog().debug( "toRelative(" + basedir + ", " + absolutePath + ") => " + relative );
        }

        return relative;
    }


> CLONE -still broken - Module filepath is generated incorrectly
> --------------------------------------------------------------
>
>                 Key: MIDEA-102
>                 URL: http://jira.codehaus.org/browse/MIDEA-102
>             Project: Maven 2.x IDEA Plugin
>          Issue Type: Bug
>    Affects Versions: 2.1
>         Environment: $ mvn -v
> Maven version: 2.0.7
> Java version: 1.5.0_11
> OS name: "windows xp" version: "5.1" arch: "x86"
> cygwin
>            Reporter: Joern Huxhorn
>            Assignee: Dennis Lundberg
>             Fix For: 2.2
>
>         Attachments: maven-idea-plugin-MIDEA-102.patch
>
>
> I have a multi-module mvn project.
> When I do an mvn idea:clean idea:idea, the following ProjectModuleManager snippet in the top level .ipr is generated:
> <component name="ProjectModuleManager"> 
>     <modules> 
>       <!-- module filepath="$$PROJECT_DIR$$/${pom.artifactId}.iml"/ -->  
>       <module filepath="$PROJECT_DIR$/gateway.iml"/>
>       <module filepath="$PROJECT_DIR$/C:/dev/voca/gateway/domain/gateway-domain.iml"/>
>       <module filepath="$PROJECT_DIR$/C:/dev/voca/gateway/instruction-store/gateway-instruction-store.iml"/>
>       <module filepath="$PROJECT_DIR$/C:/dev/voca/gateway/parser/gateway-parser.iml"/>
>       <module filepath="$PROJECT_DIR$/C:/dev/voca/gateway/psrgeneration/gateway-psr-generation.iml"/>
>       <module filepath="$PROJECT_DIR$/C:/dev/voca/gateway/output/gateway-output.iml"/>
>       <module filepath="$PROJECT_DIR$/C:/dev/voca/gateway/destination-resolver/gateway-destination-resolver.iml"/>
>       <module filepath="$PROJECT_DIR$/C:/dev/voca/gateway/choreography/gateway-choreography.iml"/>
>       <module filepath="$PROJECT_DIR$/C:/dev/voca/gateway/presentation/gateway-presentation.iml"/>
>       <module filepath="$PROJECT_DIR$/C:/dev/voca/gateway/assembly/gateway-assembly.iml"/>
>     </modules> 
>   </component>
> The $PROJECT_DIR in this case is C:/dev/voca/gateway/.
> But this path is being appended in a hard-coded fashion after the $PROJECT_DIR entry.
> The symptom in Intellij is the following error message:
> Cannot load module: File C:\dev\voca\gateway\C:\dev\voca\gateway\domain\gateway-domain.iml does not exist
> Would you like to remove the module from the project?
> The workaround is to delete the extra appended file path from each module entry in the above mentioned snippet.

-- 
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