Community
Participate
Working Groups
Eclipse 2.1 - create a new java project - enter the following name: "my;project" (note the ; character) - create a class Test inside this project - execute this class. "java.lang.NoClassDefFoundError: Test" is thrown Tried with IBM 1.3.1 and Sun 1.4.0 The problem is that some platforms, such as W2K and WinXP, allow folders to contain ';' characters. This seems to cause trouble when Eclipse - or the VM ? - subsequently construct or parse the classpath.
Actually I am not if ';' can be used inside a name that will be part of the class path. If ';' is legal then validateClassPath shouldn't accept the name. If it is legal i guess that the launcher doesn't properly escape the ';'. Moving to JDT Core for commenting of ';' is a legal character.
I would say it is legal, the launcher should support them (I can create such folders, and use them on a java classpath when quoted). Similar issue to names with spaces.
I played around with debugging this and changing the classpath string just to see if escaping the semi-colon or quoting the string would help. Attempting to escape the semi-colon results in an error (I don't think you can escape ';' in Java?) and quoting the string doesn't seem to change anything.
Note related Bug 32236. On Linux, Eclipse disallows file names with the list separator character (':'). One solution to this problem is to make the hand-holding universal and not allow ';' either. Personally, I'd prefer to allow all characters and just fix this bug. :)
It does not appear that we can do anything to fix this. The semi-colon is used as a path seperator, and using quotes does not help. Philippe, your comment claims you can use the folders with ";" when quoted. Did you really get that to work (at runimte)? We could improve error reporting, but since this is not a critical issue, I'm going to defer for 2.1
I think whatever Eclipse platform considers to be a valid project name should be honoured. I think I had tried with a manual Java VM command line and got it to work, but I wouldn't bet too much on this.
I cannot get this to work from the command line.
do not intend to fix - can't get it to work from command line.
Marking as won't fix.