Как скомпилировать Java-программу из каталога? - PullRequest
3 голосов
/ 11 ноября 2010

Я изучаю Java, и я хотел бы знать, как скомпилировать программу Java из другого каталога.

Например, мой компилятор находится на моем диске c:\, и я хочу скомпилировать Java-программу с диска e:\

Как мне это сделать? Я получаю эту ошибку, что это значит? alt text

Ответы [ 5 ]

2 голосов
/ 11 ноября 2010

Текущий каталог должен быть в CLASSPATH по умолчанию, но, возможно, это не так. Попробуйте java -cp . Assignment

0 голосов
/ 11 ноября 2010

Есть ли объявление package в верхней части вашего Assignment.java?Если это так, удалите его и перекомпилируйте для быстрого исправления.

Для работы с пакетами Java вам потребуется структура каталогов, соответствующая объявлениям пакетов.

Например, скажем, что это вашAssignment.java:

package myjava;

public class Assignment {
    public static void main(String[] args) {
    ....
    ....
}

Вы запускаете эту команду для компиляции:

E:\java>javac -d . Assignment.java

И вы получаете myjava \ Assignment.class, если все прошло хорошо.Опция -d . означает «помещать сгенерированные файлы классов в текущий каталог».javac создает иерархию пакетов как каталоги для вас.

Теперь, когда ваши каталоги соответствуют вашим пакетам, это должно работать:

E:\java>java myjava.Assignment
0 голосов
/ 11 ноября 2010

Вы используете пакет в своем коде ... поэтому он показывает NoClassDefFoundError, когда вы запускаете, вы должны создать папку, содержащую имя вашего пакета ... скомпилировать этот файл Java ... и вы можете запустить этот файл из предыдущего каталога этогоjava file directory ...

Например, ваш код

package test;
class Assignment{
public static void main(String args[]){
System.out.println("Hai");
}
}

он сохранен по этому пути "E:\java\test"

скомпилируйте этот файл и вы можете запустить егофайл из этого пути "E:\java"

команда для запуска этого файла

java test.Assignment

E:\java> java test.Assignment
0 голосов
/ 11 ноября 2010

Хорошо, простой способ - установить переменную urp classpath. Так как из скриншота кажется, что вы используете Windows, я предлагаю вам щелкнуть правой кнопкой мыши на моем компьютере и выбрать свойства. Перейдите в расширенные настройки и щелкните вкладку переменной среды.

Затем появляется новое окно с системной переменной внизу. Выберите новый и создайте переменную JAVA_HOME = путь, где вы установили Java, например, для меня это c: \ java

Теперь, как только вы добавите этот поиск к существующему пути переменной и выберете edit. Теперь в конце добавьте следующее:% JAVA_HOME% \ bin Теперь вы можете запустить программу Java из любого места на компьютере ....

0 голосов
/ 11 ноября 2010

Прошло много времени с тех пор, как я сделал java, но кажется, что компиляция не твоя проблема. Поскольку javac возвращается правильно, похоже, проблема с Assignment.java. У вашего Assignment класса есть метод main?

...