С Новым годом! Форум программистов, компьютерный форум, киберфорум
Java
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.85/267: Рейтинг темы: голосов - 267, средняя оценка - 4.85
3 / 3 / 1
Регистрация: 12.01.2010
Сообщений: 34

Как скомпилировать прогу?

30.05.2010, 15:16. Показов 52902. Ответов 21
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Я ток начал изучать java.
как запустить эту прогу???
Java
1
2
3
4
5
6
7
8
9
10
/*
Это простая программа Java.
Назовите этот файл "Example.java".
*/
class Example {
    // Программа начинается с обращения к main().
    public statiс void main (String args[]) {
        System.out.println("Простая Java-программа.") ;
    }
}
В книге написано в командной строке введите C:\>javac Example.java

ввожу а у меня пишет,что javac не является внутренней или внешней командой исполняемой...
Я установил вроде всё что надо...
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
30.05.2010, 15:16
Ответы с готовыми решениями:

Как скомпилировать прогу на java в linux ?
Объясните новичку :(

Как скомпилировать прогу под Ubuntu?
Для работы мне понадобился симулятор дорожного движения. Я нашел готовый исходный код симулятора дорожного движения под UNIX (к...

Как скомпилировать прогу с полностью самодостаточным кодом в Билдере 5?
Ситуация такова: в свойствах проекта указываю что прога не должна использовать дополнительные библиотеки. (RunTime .....) Размер кода...

21
33 / 33 / 1
Регистрация: 26.03.2007
Сообщений: 82
31.05.2010, 02:56
Лучший ответ Сообщение было отмечено как решение

Решение

Вот FAQ прочитай.
Сам только вчера с этой проблемой столкнулся.

Открой свойства системы (win+pause) и во вкладке Дополнительно внизу нажми на кнопочку Переменные среды.
Там в Переменные среды пользователя создай переменную CLASSPATH и присвой ей путь к папке в которой у тебя будут храниться твои проекты.
У меня например это папка E:\JAVA\src
В этой папке для каждого проекта своя папка.
Название папки проекта это твой пакет и в нём будут файлы, которые называются как класс, который они описывают.
Например у меня есть проект calc. Основной файл называется Base.java

Т.е. путь к нему E:\JAVA\src\calc\Base.java
Чтоб откомпилить делать надо так:
1) из папки E:\JAVA\src\ запускаем командную строку
2) вводим
Code
1
javac calc/Base.java
В той же папке, если всё правильно написано получается файл Base.class
3) Чтоб запустить его вводим так:
Code
1
java calc.Base
Примечания:
1) При компиляции указываем расширение .java
2) При запуске пишем главный файл без расширения
3) При компиляции между пакетом и файлом пишем \
4) При запуске между пакетом и файлом пишем .
5) Названия классов должны начинатья с большой буквы (не обязательно, но так принято во всём мире)
6) Название файла описывающего класс должно называться как класс (обязатеьлно)
7) Командная строка чувствительна к регистру
8) В одном файле описывается ТОЛЬКО ОДИН класс или интерфейс (вернее только один public класс, но лучше сразу привыкнуть и взять за правило "для каждого класса отдельный файл")
9) Если тебе это пригодилось можешь тыкнуть на кнопочку "+1 Спасибо"

Вот в принципе итог всех моих мучений с первым HelloWorld-ом. Облазил полинета и убил кучу времени, пока вьехал что к чему.
Надеюсь всё объяснил нормально.
17
33 / 33 / 1
Регистрация: 26.03.2007
Сообщений: 82
01.06.2010, 15:57
Во-первых напиши ошибку, которую тебе выдает компилятор.
В ком.строке пр.кн. выделить и нажать интер.

Добавлено через 3 минуты
ааа, понял что за фигня у тебя!!!
Там же в пееременных среды окружения пропиши в переменную path папку в которой у тебя находится javac.exe
У меня он находится в папке c:\Program Files\Java\jdk1.6.0_19\bin\
2
3 / 3 / 1
Регистрация: 12.01.2010
Сообщений: 34
01.06.2010, 19:04  [ТС]
Microsoft Windows [Version 6.1.7600]
(c) Корпорация Майкрософт (Microsoft Corp.), 2009. Все права защищены.

C:\Users\Alex Dzot>javac Example.java
javac: file not found: Example.java
Usage: javac <options> <source files>
use -help for a list of possible options

C:\Users\Alex Dzot>java Example
Exception in thread "main" java.lang.NoClassDefFoundError: Example
Caused by: java.lang.ClassNotFoundException: Example
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivile ged(Native Method)
at java.net.URLClassLoader.findClass(Unknow n Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadCla ss(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
Could not find the main class: Example. Program will exit.

C:\Users\Alex Dzot>

Всё равно ошибку выдает
0
33 / 33 / 1
Регистрация: 26.03.2007
Сообщений: 82
02.06.2010, 01:07
Ну вот, компилятор уже подает признаки жизни, с чем я тебя и поздравляю =)

Что касается этой ошибки.
1) Твой файл как я понимаю находится в папке C:\Users\Alex Dzot\Example.java
2) Вводишь ты его с большой буквы.

Добавлено через 19 минут
кхммм... у тебя в слове static последняя "c" русская...
2
3 / 3 / 1
Регистрация: 12.01.2010
Сообщений: 34
02.06.2010, 01:57  [ТС]
С буквой всё Ок было.

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

Я и сам ток узнал,что чтобы запустить командную строку из папки нужно нажать Shift+правая кнопка окно команд

Добавлено через 1 минуту
УРАААААААА!!!!!!!!!!!!!Можно ехать дальше.
2
33 / 33 / 1
Регистрация: 26.03.2007
Сообщений: 82
02.06.2010, 04:00
Конгкретно в твоём примере в первом посте ststic написанно именно с русской буквой с.

Я и сам ток узнал,что чтобы запустить командную строку из папки нужно нажать Shift+правая кнопка окно команд
Это ты про что, что то я не понял.
0
3 / 3 / 1
Регистрация: 12.01.2010
Сообщений: 34
02.06.2010, 11:40  [ТС]
Цитата Сообщение от Ferendy Посмотреть сообщение
Чтоб откомпилить делать надо так:
1) из папки E:\JAVA\src\ запускаем командную строку

А я её просто запускал, с рабочего стола, а файл с прогой находился не на С, а на F
0
 Аватар для Hitinok
0 / 0 / 0
Регистрация: 05.03.2011
Сообщений: 7
05.03.2011, 09:37
люди, подскажите пожалуйста, почему не запускается? какая то нестандартная ошибка вылазит..
exception in thread "main" java.lang.NoClassDefFoundError: com/sum/tools/javac/Main
а потом куча всякого написано..
0
 Аватар для Skipy
2000 / 1427 / 92
Регистрация: 25.11.2010
Сообщений: 3,611
05.03.2011, 10:51
Что именно не запускается? Что Вы делаете? Как? Эта ошибка означает, что не найден код компилятора. Что вообще странно - если есть javac.exe, то должен быть и tools.jar, если, конечно, это не поломаный Java SDK.

В общем, давайте с начала. Что устанавливали - Java SDK или JRE? Используете ли среду разработки? Какие действия производили для получения такого эффекта?
0
 Аватар для Hitinok
0 / 0 / 0
Регистрация: 05.03.2011
Сообщений: 7
05.03.2011, 11:09
пытаюсь запустить hello world, переменные path, java_home, и classpath создал, указал что где и как...
в командной строке пишу как положено, javac hello world.java а в ответ вылазит вон та гадость..

Добавлено через 1 минуту
а, да, установил java sdk

Добавлено через 1 минуту
среду разработки не использую, пытаюсь как везде говорилось в элементарном текстовом редакторе
0
 Аватар для Skipy
2000 / 1427 / 92
Регистрация: 25.11.2010
Сообщений: 3,611
05.03.2011, 11:14
в командной строке пишу как положено, javac hello world.java
А Вы уверены, что компилятор нормально воспримет название Hello World.java, через пробел? Кстати, Вы в курсе, что имя файла должно совпадать с именем класса вплоть до регистра смиволов?

В общем, так. Такая ошибка бывает, если неправильно указать classpath. Потому делаете следующее:

1. Убираете переменные JAVA_HOME, classpath и иже с ними - они Вам пока не нужны.
2. Проверяете, что java и javac доступны - просто набираете в командной строке. Должен быть осмысленный ответ утилиты, а не "файл не найден". Если не найдены - прописываете в PATH путь до <JDK_INSTALL_DIR>/bin. После этого перезапускаете командную строку - она не подхватывает изменения, сделаные в процессе выполнения.
3. Читаете вот это: . Там в конце есть пошаговая инструкция, как создать пример типа Hello, World и выполнить его.
0
 Аватар для Hitinok
0 / 0 / 0
Регистрация: 05.03.2011
Сообщений: 7
05.03.2011, 11:18
пробел убрал, название файла с названием класса подправил.. тоже самое=((
0
 Аватар для Skipy
2000 / 1427 / 92
Регистрация: 25.11.2010
Сообщений: 3,611
05.03.2011, 11:26
А у Вас вообще tools.jar есть? <JDK_INSTALL_DIR>\lib\tools.jar
0
 Аватар для Hitinok
0 / 0 / 0
Регистрация: 05.03.2011
Сообщений: 7
05.03.2011, 11:27
имеется
0
33 / 33 / 1
Регистрация: 26.03.2007
Сообщений: 82
05.03.2011, 12:10
Hitinok, Название файла, название класса внутри файла и то что ты вводишь в ком строке должно быть одинаковым. Как сказал Skipy вплоть до регистра.
Если файл с пробелом, то его можно брать в кавычки.
Скинь код и текст из ком строки. Это будет самое быстрое. А то тут даже и не знаешь как тебе помочь.
Я уверен на 99%, что ошибка в ком строке или в коде.
0
 Аватар для Hitinok
0 / 0 / 0
Регистрация: 05.03.2011
Сообщений: 7
08.03.2011, 13:43
в переменных средах указываю:
classpath C:\Sun\SDK\jdk\bin
path C:\Sun\SDK\jdk\bin
java_home C:\Sun\SDK\jdk\bin
создаю файл helloworld.java через txt, просто поменяв расширение
файл сохранил в папке C:\Sun\SDK\jdk\bin
вот содержимое:
public class helloworld
{
public static void main(String args[])
{

System.out.println("Hello, World!");
}
}
потом запускаю командную строку открывается:
C:\Documents and settings\Женя>
вписываю туда : javac helloworld.java
он выдает в ответ:
exception in thread "main" java.lang.NoClassDefFoundError: com/sum/tools/javac/Main
caused by: Java.Lang.ClassNotFoundException :com.sum.tools.javac.main
at Java.net.URLClassLoader$1.run<Unknown Sourse>
at Java.Security.AccessController.doPrivile ged<Native Method>
at Java.net.URLClassLoader.findclass<Unknow n Sourse>
at Java.Lang.ClassLoader.LoadClass<Unknown Sourse>
at sun.misc.Launcher$AppClassLoader.LoadCla ss<Unknown Sourse>
at Java.Lang.ClassLoader.LoadClass<Unknown Sourse>
Could not find the main class: com.sum.tools.javac.Main. Program will exit.

Добавлено через 1 минуту
уже с ума схожу, не знаю что делать.. и так сяк и ничего..
0
64 / 64 / 12
Регистрация: 05.07.2010
Сообщений: 219
08.03.2011, 14:58
0
0 / 0 / 0
Регистрация: 28.06.2016
Сообщений: 5
18.07.2016, 07:48
Добрый день!
Пытаюсь разобраться с процессом компиляции. Не получается, подскажите, что делать?

Установлено:
1. Операционная система Windows 10.
2. Java SE Development Kit 8u91
3. IntelliJ IDEA 2016.1.3
Build #IC-145.1617, built on June 3, 2016
JRE: 1.8.0_91-b15 amd64
JVM: Java HotSpot(TM) 64-Bit Server VM by Oracle Corporation

Что сделано:
1. В переменных средах операционной системы создана переменная CLASSPATH, и ей присвоен путь C:\Users\Сергей\IdeaProjects\untitled\sr c (здесь лежат проекты).
2. В переменных средах операционной системы создана переменная path, и ей присвоен путь C:\Program Files\Java\jdk1.8.0_91\bin

Текст программы:
Java
1
2
3
4
5
6
7
8
9
10
/*
Это простая программа Java.
Назовите этот файл "Example.java".
*/
class Example {
    // Программа начинается с обращения к main().
    public statiс void main (String args[]) {
        System.out.println("Простая Java-программа.") ;
    }
}
В командной строке, вызванной из окна IntelliJ IDEA, даю команду:
Windows Batch file
1
javac Example.java
Получаю ответ:

C:\Users\Сергей\IdeaProjects\untitled\sr c>javac Example.java
Example.java:7: error: <identifier> expected
public stati╤Б void main (String args[]) {
^
Example.java:7: error: invalid method declaration; return type required
public stati╤Б void main (String args[]) {

Запускаю командную строку от имени администратора непосредственно в папке: C:\Users\Сергей\IdeaProjects\untitled\sr c>

Получаю результат:
C:\Users\Сергей\IdeaProjects\untitled\sr c>javac Example.java
Example.java:7: error: <identifier> expected
public stati╤Б void main (String args[]) {
^
Example.java:7: error: invalid method declaration; return type required
public stati╤Б void main (String args[]) {
^
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33371 / 21497 / 8234
Регистрация: 22.10.2011
Сообщений: 36,893
Записей в блоге: 12
18.07.2016, 10:27
Сергей 1008, внимательно читать тему не пробовал?
Цитата Сообщение от Ferendy Посмотреть сообщение
кхммм... у тебя в слове static последняя "c" русская...
Вот и у тебя - то же самое. О чем компилятор и говорит. Неужели по подсветке не видно, что со словом static не все в порядке? Оно же не выделяется bold-ом.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.07.2016, 10:27
Помогаю со студенческими работами здесь

Скомпилировать прогу
у меня такая просьба, мож кто поможет... Мне нужно скомпилить прогу, но перед тем убрать вкладку &quot;Помощь&quot; у себя пробую...

Помогите скомпилировать прогу. Функция OpenThread.
вот диспетчер процессов, не работает функция OpenThread(вылетает ошибка), для компиляции проекта мен потребовалось вставить своё описание и...

Не могу скомпилировать прогу по готовому образцу
Всех приветствую! В Си я ещё новичок но основы уже изучил коечто начал писать и компилить, правда еще слабо конечно Вообщем такая...

Скомпилировать эту прогу и скинуть скрин графика
Нужно скомпилировать эту прогу и скинуть скрин графика. Пример с учебника нормально работает, а когда меняю значения, то график не...

Не получается скомпилировать и запустить прогу в Code Blocks
В среде CodeBlocks 13.12 создаю проект (Console Application), пишу там свой код: #include &lt;stdio.h&gt; #include &lt;math.h&gt; int...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru