Bug Database
Bug Detail
Quick Lists
Top 25 Bugs
Top 25 RFE's
Recently Closed Bugs
Printable Page Printable Page


Bug Database
Bug ID: 4064185
Votes 5
Synopsis javac in Windows NT doesn't handle forward slash (/)
Category java:compiler
Reported Against 1.1.3 , 1.1.4 , 1.2beta2
Release Fixed 1.2(1.2beta4)
State 11-Closed, Unverified, bug
Priority: 3-Medium
Related Bugs 4096400 , 4111087
Submit Date 11-JUL-1997
Description




javac can't find classes if it is invoked on a file
which is specified by a path using forward slashes.

This makes it more painful than necessary to write makefiles
that work on NT and Solaris.

e.g.:

> javac -g -deprecation PackageName/ClassName.java
PackageName/ClassName.java:38: Public class PackageName.ClassName must be 
defined in a file called "ClassName.java".
public abstract class ClassName extends Thread  {
                      ^
1 error
>

But, this works:

>javac -g -deprecation PackageName\ClassName.java
>

======================================================================
Work Around




Use backslashes on Windows machines!
======================================================================
Evaluation
Verified behavior with 1.1.3fcs on NT.
He's right; according to mr, this should work, with the file name
getting automagically translated by some native io method somewhere.

  xxxxx@xxxxx   1997-07-11

There check was being performed by comparing the command line string
to what the compiler thought it should be using .equals().  The fix
was to instead check canonified names.

  xxxxx@xxxxx   1998-05-05

My "fix" above was incorrect, and is being backed out.  The real problem
is that java.io.File.getName() represents paths as strings rather than with
a real data structure.  Mark assures me that problem will get fixed very
soon, which will cause the javac problem to go away.

I'm moving this back from integrated to committed until I can confirm
that the java.io fix fixes this problem as well.

  xxxxx@xxxxx   1998-05-07

Confirmed fixed with putback for 4102262.

  xxxxx@xxxxx   1998-05-13
Comments
  
  Include a link with my name & email   


PLEASE NOTE: JDK6 is formerly known as Project Mustang