просто для наглядности; вы говорите, что у вас есть класс в пакете по умолчанию, то есть вы не включили спецификатор пакета в файл Java, и ваш класс называется HelloWorldApp
. Когда вы скомпилировали это, вы получили файл класса HelloWorldApp.class
в текущем каталоге.
Предполагая, что вышеизложенное верно, тогда попробуйте:
java -cp . HelloWorldApp
Например, на Unix Box работает следующее:
$ echo 'class HelloWorldApp { public static void main(String []argv) { System.out.println("Hello World!"); } }' > HelloWorldApp.java
$ javac HelloWorldApp.java
$ java -cp . HelloWorldApp
Hello World!
Конечно, вы должны сделать отступ в своем коде немного лучше, чем просто поместить все это в одну строку; -)
Редактировать : Чтобы ответить на комментарий:
Обычно путь к классам по умолчанию - это библиотеки времени выполнения, а - текущий каталог . Тем не менее, если у вас установлена переменная CLASSPATH
, это переопределит значение по умолчанию, и вам необходимо явно установить classpath обратно в значение «по умолчанию». Чтобы проверить, установлена ли переменная окружения CLASSPATH
, вы можете сделать (опять-таки, предполагая, что Unix):
set | grep CLASSPATH
Если он установлен, поэтому вам нужно вручную включить .
в ваш путь к классам.