Error 'A resource exists with a different case' checking out

I imported a 3.5.9 solution into 4.1.2 developer repository using the dmin page. No error’s there
When doing a checkout in eclips I got the error "cannot checkout, could not write object [projectname] to workspace directory

I looked in the eclips log file which states:
A resource exists with a different case

below a snippet from the log file:


!STACK 1
org.eclipse.core.internal.resources.ResourceException: A resource exists with a different case: ‘/SM/forms/BudgetLineDetail’.
at org.eclipse.core.internal.resources.Resource.checkDoesNotExist(Resource.java:298)
at org.eclipse.core.internal.resources.Resource.checkDoesNotExist(Resource.java:276)
at org.eclipse.core.internal.resources.Folder.assertCreateRequirements(Folder.java:29)
at org.eclipse.core.internal.resources.Folder.create(Folder.java:88)
at org.eclipse.core.internal.resources.Folder.create(Folder.java:118)
at com.servoy.eclipse.core.Ze.mkdirs(Ze.java:78)
at com.servoy.eclipse.core.Ze.Za(Ze.java:104)
at com.servoy.eclipse.core.WorkspaceFileAccess$1.close(WorkspaceFileAccess.java:4)
at com.servoy.j2db.util.Utils.closeOutputStream(Utils.java:320)
at com.servoy.eclipse.core.Ze.Za(Ze.java:16)
at com.servoy.eclipse.core.repository.SolutionSerializer.writePersist(SolutionSerializer.java:32)
at com.servoy.eclipse.team.RepositoryOperations.Za(RepositoryOperations.java:659)
at com.servoy.eclipse.team.RepositoryOperations.Za(RepositoryOperations.java:273)
at com.servoy.eclipse.team.RepositoryOperations.Ze(RepositoryOperations.java:327)
at com.servoy.eclipse.team.ServoyTeamProvider.configureProject(ServoyTeamProvider.java:312)
at org.eclipse.team.core.RepositoryProvider.configure(RepositoryProvider.java:334)
at org.eclipse.team.core.RepositoryProvider.map(RepositoryProvider.java:129)
at com.servoy.eclipse.team.ServoyTeamProvider.createSolutionProject(ServoyTeamProvider.java:5)
at com.servoy.eclipse.team.ServoyTeamProvider.createSolutionProject(ServoyTeamProvider.java:35)
at com.servoy.eclipse.team.ServoyTeamProvider.checkoutSelectedSolution(ServoyTeamProvider.java:320)
at com.servoy.eclipse.team.ui.NewSolutionWizard$2.runInWorkspace(NewSolutionWizard.java:7)
at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
!SUBENTRY 1 org.eclipse.core.resources 4 275 2009-05-13 20:58:46.571
!MESSAGE A resource exists with a different case: ‘/SM/forms/BudgetLineDetail’.

!ENTRY com.servoy.eclipse.core 4 0 2009-05-13 20:58:46.574
!MESSAGE writeProjectToDir
!STACK 0
com.servoy.j2db.persistence.RepositoryException: Could not write obj


end of the log states:

… 12 more

Hi Ron,

In Servoy 4.x object names are case insensistive. So it seems you have 2 forms with the same name but with different cases. Fix that in 3.5 and re-import the solution into the 4.x repository.

Hope this helps.

The problem is Windows does not accept files with same name but different case in same parent folder. So, we cannot have this situation in 4.x for forms,elements …

I’d like to emphasize that this issue is a filesystem constraint and not a Servoy constraint.

On both Mac OS X (when default formatted) and Windows the filesystem is case insensitive so you will get this error. I guess one workaround is to use an external drive that is formatted using a case sensitive format and use that as your workspace.

As far as I know Linux only has case sensitive filesystems so this issue shouldn’t occur there.

solved the issue on mac, created a dmg which is case sensitive and than created an eclips workspace in that mounted image. Checkout worked fine there.
This is a filesystem issue and not eclips.

But do fix this problem… because we will have checks for this to make sure that this cant happen.

So you can use a case sensitive filesystem to check it out but then do fix the actual problem and rename 1 of the 2