It's all about the answers!

Ask a question

Jazz SCM - Changing remote path for a component - Causes issues with JBE.

Chris Fagyal (462109) | asked Apr 23 '13, 8:29 a.m.
I know this question exists and has been answered, sort of, but there are more answers needed:

I'd like to know if there is a solution other than recreating the component.  Generally you want (in my opinion) components with a remote path of /<component name> so that when you load the component it loads all of the contents into a folder with the component name.  If the root path is '/', then it loads all of the contents into /, and thus if you have multiple components all with '/' as a root path, it tries to load all components on top of each other.  This obviously is bad.  The other issue that is created with a remote path of '/' is that some command line SCM does not work, especially the JBE.   The jazz build engine will not load a component from the repository that has a remote path of '/'

The default behavior when creating components if one does so correctly is to have the remote path be /<component name>.  This happens when one creates and eclipse project, populates it, does team->share project->jazz scm-> and then creates a new component in a workspace and associates the eclipse project with that new component.  I don't know what sequence of events my developers have discovered which incorrectly creates components with a remote path of '/' but it'd be nice to be able to fix this without recreating the component, especially in the case where the issue is found months later and thus the component has significant amounts of history.

2 answers

permanent link
Spencer Murata (2.3k115971) | answered Apr 23 '13, 9:21 a.m.
 You should be able to move the files into a folder in that component.  So rather than having the .project be at the root folder of the component, move those files into a folder.  Then the component is intact and the folder in the component becomes the eclipse project.


Chris Fagyal commented Apr 23 '13, 11:27 a.m.

I don't believe that fixes the remote path issue in Jazz SCM though, which will still cause issues with JBE.  The remote path needs to be set properly, and the only way i've discovered to fix that issue is to recreate the component in the proper fashion.  There needs to be a way to modify components to resolves issues like this.

Spencer Murata commented Apr 24 '13, 2:38 p.m.

I guess I'm not sure what remote path you are talking about then.  The component is the logical collection of SCM folder/projects, so moving the folders in source control should be reflected when you do a load.  The common issue I have seen is the components having .project files in their root directory so when multiple components are loaded the .project files collide.  The resolution is to move the .project files into another folder in the component so they don't collide.  So I definitely understand the problem of not being able to load multiple components to the same load directory, but moving everything into folders or loading components as root folders should fix it.

Tim Mok commented Apr 25 '13, 8:29 a.m.

What Spencer has described sounds correct. You can move your resources in the component and check-in the changes.

permanent link
Tim Mok (6.6k38) | answered Apr 25 '13, 8:27 a.m.
Components are containers for your resources. When an Eclipse project is shared, it is placed in the component according to how it was in your Eclipse workspace. It's not going to create a folder in the component root named after the component unless you have done that in your Eclipse workspace.

I think you are looking for the option of loading the component into a folder named after the component. For a build, this can be done by selecting "Create folders for components" in your build definition.

Or you can try what Spencer has suggested and create a folder in your component root where you will move all your projects into it.

Your answer

Register or to post your answer.

Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.