I just found this out and I'm hoping someone has a clue as to what's going on. Commands to follow (run this in a temp directory, clearing everything beforehand):
No problems:
cat << EOF > Myface.java
public interface Myface {}
EOF
cat << EOF > Myclass.java
public class Myclass implements Myface {}
EOF
javac Myface.java
javac Myclass.java
Myclass won't compile:
cat << EOF > Myface.java
package Mypackage;
public interface Myface {}
EOF
cat << EOF > Myclass.java
package Mypackage;
public class Myclass implements Myface {}
EOF
javac Myface.java
javac Myclass.java
Myclass WON'T compile:
cat << EOF > Myface.java
package Mypackage;
public interface Myface {}
EOF
cat << EOF > Myclass.java
package Mypackage;
public class Myclass implements Myface {}
EOF
javac Myclass.java
What's going on here?
EDIT: All the commands, run:
javatest@l-bel-smai-ubuntu:~$ ls
javatest@l-bel-smai-ubuntu:~$ pwd
/home/javatest
javatest@l-bel-smai-ubuntu:~$ cat << EOF > Myface.java
> public interface Myface {}
> EOF
javatest@l-bel-smai-ubuntu:~$
javatest@l-bel-smai-ubuntu:~$ cat << EOF > Myclass.java
> public class Myclass implements Myface {}
> EOF
javatest@l-bel-smai-ubuntu:~$
javatest@l-bel-smai-ubuntu:~$ javac Myface.java
javatest@l-bel-smai-ubuntu:~$ javac Myclass.java
javatest@l-bel-smai-ubuntu:~$ ls
Myclass.class Myclass.java Myface.class Myface.java
javatest@l-bel-smai-ubuntu:~$ rm *
javatest@l-bel-smai-ubuntu:~$ cat << EOF > Myface.java
> package Mypackage;
> public interface Myface {}
> EOF
javatest@l-bel-smai-ubuntu:~$
javatest@l-bel-smai-ubuntu:~$ cat << EOF > Myclass.java
> package Mypackage;
> public class Myclass implements Myface {}
> EOF
javatest@l-bel-smai-ubuntu:~$
javatest@l-bel-smai-ubuntu:~$ javac Myface.java
javatest@l-bel-smai-ubuntu:~$ javac Myclass.java
Myclass.java:2: cannot find symbol
symbol: class Myface
public class Myclass implements Myface {}
^
1 error
javatest@l-bel-smai-ubuntu:~$ rm *
javatest@l-bel-smai-ubuntu:~$ cat << EOF > Myface.java
> package Mypackage;
> public interface Myface {}
> EOF
javatest@l-bel-smai-ubuntu:~$
javatest@l-bel-smai-ubuntu:~$ cat << EOF > Myclass.java
> package Mypackage;
> public class Myclass implements Myface {}
> EOF
javatest@l-bel-smai-ubuntu:~$
javatest@l-bel-smai-ubuntu:~$ javac Myclass.java
Myclass.java:2: cannot find symbol
symbol: class Myface
public class Myclass implements Myface {}
^
1 error
javatest@l-bel-smai-ubuntu:~$