2010-02-09 1 views
1

директорий у меня естьJavac -classpath проблема с несколькими

c:\sources с

A.java 
B.java 
com\pluto\B.class 
Test.java 

и

c:\packages with

com\pluto\oth\C.class 

в Test.java имеются ссылки на B и C (правильно-им перенесенный), но когда я пытаюсь скомпилировать с (я в c:\sources)

javac -classpath \.;c:\packages Test.java 

компилятор скажите мне, что он не находит B

, но если я перееду B.java из c:\sources в другой каталог и затем Я компилирую с

javac -classpath .;c:\packages Test.java 

это действительно работа !!

Как установить текущий рекордер? . или \. и почему первый тест не удается?

... похоже, что компилятор не хочет найти файл класса com/pluto/B.class и исходный файл с тем же именем B.java в текущем каталоге, где я компилирую. ..

+0

Почему у вас есть пакет B.java в пакете по умолчанию и B.class в пакете com/pluto? Если это тот же класс, который является правильным пакетом? –

+0

Что вы подразумеваете под "cut off B.java"? –

+0

Правильный пакет com \ pluto ... отрежьте -> отодвиньте B.java от c: \ sources – xdevel2000

ответ

4

Используйте ., чтобы обратиться к текущему каталогу. \. относится к корневому каталогу текущего диска (например, C:\).

+0

. или. \ чтобы ссылаться на текущий каталог –