Я пытаюсь узнать, как скомпилировать Java-программы, созданные на Eclipse, IDE, в Terminal. Начиная сразу после открытия терминала, какие шаги я должен предпринять, чтобы скомпилировать программу, которую я сделал на Eclipse в терминале? Спасибо за помощь.
UPDATE: я дошел до моей папки java и пакета, в котором хранятся мои программы, и сделал строку javac Hello.java(Hello - основная программа Hello World, которую я пытаюсь скомпилировать), но когда я do java Привет, я получаю большую ошибку:
Исключение в потоке "main" java.lang.NoClassDefFoundError: Hello (неправильное имя: homeWorkPackage/Hello) в java.lang.ClassLoader.defineClass1 (собственный метод) в java.lang.ClassLoader.defineClass(ClassLoader.java:800) в java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) в java.net.URLClassLoader.defineClass(URLClassLoader.java:449) в java.net.URLClassLoader.access $ 100 (URLClassLoader.java:71) в java.net.URLClassLoader $ 1.run(URLClassLoader.java:361) в java.net.URLClassLoader $ 1.run(URLClassLoader.java:355) в java.security.AccessController.doPrivileged (собственный метод) в java.net.URLClassLoader.findClass(URLClassLoader.java: 354) в java.lang.ClassLoader.loadClass(ClassLoader.java:425) в sun.misc.Launcher $ AppClassLoader.loadClass(Launcher.java.308) в java.lang.ClassLoader.loadClass(ClassLoader.java:358) на sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)
Что я сделал не так?
Согласно официальным учебным пособиям (если вы правильно настроили JDK:
cd
)javac [filename.java]
для компиляции программыЕсли вы используете eclipse, компиляция с терминала не нужна, однако вы можете сделать это следующим образом:
Перейдите в каталог проекта, содержащий файлы .java
. Затем вы можете запустить javac ClassName.java
например javac Cake.java
javac - это компилятор языка Java. Эта команда будет компилировать источник (ваш .java
файл). Чтобы запустить его, вы можете перейти в java ClassName
. например, java Cake
. java
запускает JVM. Именованный класс будет загружен и запуск будет запущен. Вы не включаете расширение .class
файла в команду java ClassName
.
Когда вам нужно, чтобы вы перемещались по файловой системе, я думаю, что эта страница дает хороший обзор команд, но вот несколько, которые вам могут понадобиться для этой задачи:
cd
- изменить каталог (за которым следует имя каталога), например, cd Documents
ls
- список информации о файлах (может принимать некоторые параметры)
..
может вернуть вам каталог. например, cd..
будет возвращать вам один каталог
вы также можете нажать tab
чтобы автоматически заполнить имя каталога/файла.