ant-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Nicolas Lalevée (JIRA) <j...@apache.org>
Subject [jira] [Resolved] (IVYDE-328) Do not save the project name in the classpath container configuration
Date Sat, 10 Nov 2012 15:15:12 GMT

     [ https://issues.apache.org/jira/browse/IVYDE-328?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Nicolas Lalevée resolved IVYDE-328.
-----------------------------------

    Resolution: Invalid

As discussed on ant-dev, having the project in the path is a feature. I have put a bit of
documentation in the code:
{quote}
Implementation note about why the project is serialized in the path. This is related to https://issues.apache.org/jira/browse/IVYDE-237

For some reason, when we add a project to the source path of a launch configuration, any IvyDE
container involved of that project lose its reference to its project. Then when the JDT call
the IvyDERuntimeClasspathEntryResolver to resolve the source of that container, the IRuntimeClasspathEntry
doesn't reference a Java project. In most case, an IvyDE classpath container reference an
ivy.xml relatively to the project. So in that context, the classpath cannot be resolved without
a reference to the project in the path of the container.

Another reason for having the project in the path of the container, is to make the path unique.
Again the source path in a launch configuration would consider two containers with exactly
the configurations the same, even if the IRuntimeClasspathEntry reference different projects.

To reproduce the issue, some test project is available and configured accordingly.
See in the test folder of the IvyDE project, check out the project 'jetty' and 'jetty-webapp'.
{quote}

                
> Do not save the project name in the classpath container configuration
> ---------------------------------------------------------------------
>
>                 Key: IVYDE-328
>                 URL: https://issues.apache.org/jira/browse/IVYDE-328
>             Project: IvyDE
>          Issue Type: Bug
>          Components: classpath container
>    Affects Versions: 2.2.0.beta1
>            Reporter: Carsten Pfeiffer
>            Priority: Minor
>              Labels: patch
>         Attachments: dontSaveProjectName.patch
>
>
> The classpath container in the {{.classpath}} file currently references the name of the
project that the container belongs to. E.g.
> {code}
> org.apache.ivyde.eclipse.cpcontainer.IVYDE_CONTAINER/?project=someProject&ivyXmlPath=ivy.xml&confs=*&acceptedTypes=jar%2Cbundle%2Cejb%2Cmaven-plugin&alphaOrder=false&resolveInWorkspace=false&readOSGiMetadata=false&retrievedClasspath=true&retrievedClasspathPattern=lib%2F%5Bartifact%5D-%5Brevision%5D.%5Bext%5D&retrievedClasspathSync=false&retrievedClasspathTypes=jar
> {code}
> (see the reference to "someProject").
> This is unnecessary, because the classpath container is always attached to the project
it is defined for, the there is no need to explicitly remember the project.
> Furthermore, it causes problems when a project is renamed, because the classpath container
will not be updated and then reference the wrong (old) project.
> And last, not saving the project eases copy&pasting of the classpath container entry
from one .classpath file to another (no need to click in all those dialogs then).
> I'll attach a patch that removes the saving of the project. The loading is kept at it
is.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message