Я пытаюсь выполнить программу Java из командной строки в Windows. Вот мой код:
import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; public class CopyFile < public static void main(String[] args) < InputStream inStream = null; OutputStream outStream = null; try < File afile = new File(«input.txt»); File bfile = new File(«inputCopy.txt»); inStream = new FileInputStream(afile); outStream = new FileOutputStream(bfile); byte[] buffer = new byte[1024]; int length; // copy the file content in bytes while ((length = inStream.read(buffer)) >0) < outStream.write(buffer, 0, length); >inStream.close(); outStream.close(); System.out.println(«File is copied successful!»); > catch (IOException e) < e.printStackTrace(); >> >
Я не уверен, как выполнить программу — помощь? Возможно ли это в Windows? Почему это отличается от другой среды (я думал, что JVM был написан один раз, работает в любом месте)?
Программирование с нуля на языке Java │Глава 1 часть 1 │Ознакомление с Java.
автор: Bob Jarvis
10 ответов
предположим, что ваш файл находится вC:mywork
Команда «Выполнить» Строке
C:> cd mywork
это делает C:mywork текущий каталог.
C:mywork> dir
отображает содержимое каталога. Вы должны увидеть filenamehere.java среди файлов.
C:mywork> set path=%path%;C:Program FilesJavajdk1.5.0_09bin
это сообщает системе, где найти программы JDK.
C:mywork> javac filenamehere.java
это работает javac.exe, компилятор. Вы не должны видеть ничего, кроме следующая системная подсказка.
C:mywork> dir
javac создал filenamehere.файл класса. Вы должны увидеть filenamehere.java и filenamehere.класс среди файлов.
C:mywork> java filenamehere
это запускает интерпретатор Java. Затем вы должны увидеть свою программу выход.
если система не может найти javac, проверьте команду set path. Если и javac работает, но вы получаете ошибки, проверьте свой текст Java. Если программа компилирует, но вы получаете исключение, проверка орфографии и капитализация в имени файла и имени класса и java Командование адского мира. Java чувствительна к регистру!
Источник: askdev.ru
Как запускать программы написанные на java
Подскажите плиз ответ на следующий вопрос: написал програму на Java
c использованием JavaSwing, так вот у меня дома стоит Java и эта прога
конечно же запускается без проблем, а как мне запустить ее на работе
на компе, на котором Jav’у подавно не ставили . Может для этого нужен
какой-то Java-интерпретатор или что-то еще . Подскажите плиз
И еще пару вопросов: как в окно програмки написанной на JavaSwing
впихнуть свою иконку, и как в Java узнать размер экрана или еще лучше
Java — урок 55.2 (запуск процессов приложений в Java (Process). Тест python)
если вы подскажете как запустить програму на полный экран, а то через
setPreferredSize() не очень-то удобно.
Voobsche po nauke dlya togo chtoby tvoya Java proga
pobezhala dostatochno tolxko JRE (Java Runtime Environment). Dlya developmenta sootvetsvenno nado SDK — seichas v nalichii dve vetki: Standard Edition (eto nado vsegda imetx, tam standard odnim slovom), i Enterprise Edition J2EE JDK( on kak ponyal vklyuchaet biblioteki dlya server-side dev-ta, kak
to: servlets, jsp, JMS, EJB, JTA i t.d. Ya kak raz to s etim i rabotayu). Eto otvet na tvoi pervyi vopros.
V tvoem sluchae dlya SWINGa dostatochno postavitx: JRE (chtoby Java prosto bezhala) ili polnyi JDK SE, naprimer JDK 1.3.1_04 Standard Edition. 1.4 esche syrovat, hotya poyavilsya RC. Kak stavitx smotri zdesx:
http://java.sun.com/j2se/1.3/install-docs.html
Obyazatelxno postavx javadoc (ona idet otdelxno dlya SE, a v EE vklyuchena) i usai search na java.sun.com po vsykim voprosam
http://java.sun.com/j2se/1.3/docs.html
Naschet SWINGa skazhu tebe, my eto kogda-to prohodili i sdavali, i vse na etom, s nim malo kto imeet delo, potomu chto imetx takogo clienta, eto morazm, on zhret pamyati do oduri. Java sebya zarekomendomvala na vse 100% na server-side, t.e. J2EE.
Dalee:
To set window icon use the Frame method:
Так вот, при вызове функции из функции(строка выделенная красным),
значение, полученное при вызове функции выделенной синим, теряется,
и из-за этого прекращается дальнейшее прохождение главного
цикла
Код:
while (rs.next()) |
, хотя этого не должно
по идее возникать.
Вопрос в том, чтоб как-то сожранить значение переменной rs на
время вызова функции MakeQuery() — может кто подскажет, каким
макаром это можно сделать . Очень надо .
Заранее огромное спасибо .
Цитата:
вообще в каком редакторе пишешь проги на джаве |
Да на JBuilder’e 5-ом, только в нем нет никаких проблем с
подключением jar’ов, проблемы возникают при запуске проги
на тачке, на которой нет JBuilder’a, а есть просто тот jar, который
надобно подключить.
Добавлено
Подскажите еще плиз, как динамично выделять память
под элементы массива в Java, а то я пишу
Код:
String dbnames[]; dbnames[0]= new String(«Hello»); // к примеру |
а мне компилятор выкидывает ошибку
Код:
Variable dbnames mightnot have been initialized |
При обьявлении массива я не знаю заранее сколько элементов
он будет содержать — подскажите, как выделять память под
элементы по мере надобности.
Цитата:
Еще вопрос такого рода — есть ли в Java виртуальные функции и как их описывать( что-то я нигде не встречал слова virtual). |
они там все виртуальные
Цитата:
Подскажите плиз как юзать jar’ы — например в jar-файле сидит org/git/mm/mysql. и т.д. — как мне обратиться к классу в этом пакете не разархивируя jar . Да, и если можно — в пару словах о том, как эти jar’ы создавать и где об этом почитать поподробнее можно. |
Цитата:
проблемы возникают при запуске проги на тачке, на которой нет JBuilder’a, а есть просто тот jar, который надобно подключить |
JAVA знает что такое jar и умеет с ним работать как с обыной файловой системой. В твоём случае тебе нужно прописать jar в CLASSPATH и импортить классы как обычно.
Прописывать classpath при запуске скомпиленных классов можно, например, так (это для винды, под другими системами могут отличаться слэши и разименование переменных):
java -classpath .;path/to/mycooljar.jar;%CLASSPATH% MyClass
При компиляции ключи такие же.
Почитать про джары поподробнее можно запустив jar без аргументов — он тебе всё расскажет, даже с примерами .
Код:
String dbnames[];
dbnames[0]= new String(«Hello»); // к примеру
Источник: forum.ru-board.com
Компилируем и запускаем Java-файлы из Notepad++
Приветствую всех! Для начала хочу сказать, что я изучаю курс Java 1 и, по рекомендации преподавателя, решил воспользоваться Notepad++ для экспериментов с кодом и подготовки домашнего задания. Нужно было настроить Notepad++ таким образом, чтобы я мог запускать код и сразу видеть результат выполнения программы. В интернете я нашёл несколько способов настройки Notepad++ под работу с Java.
Самый быстрый из них я немного дополнил и хочу показать вам. За основу я взял данный гайд на английском — там всё кратко и сжато. Я же попытаюсь подробно описать процесс настройки, расскажу еще о нескольких дополнительных возможностях и решении некоторых проблем программы и плагина.
Если у вас что-то не получится или вы найдёте неточность в статье, напишите мне, и я с радостью попытаюсь помочь решить вашу проблему или устранить ошибку. Также буду рад вашим предложениям и дополнениям.
Готовим Java-инструменты и Notepad++
- У вас должны быть установлены JDK + JRE и правильно настроена переменная среды PATH.
- Скачиваем и устанавливаем последнюю версию NotePad++. Выберите версию 32-bit или 64-bit. Я буду показывать пример с 64-bit.
- Скачиваем плагин NppExec. По ссылке представлены несколько версий. Я выбрал v0.5.9.9 dev, архив — NppExec20160628_dll_x64-2.zip. В имени архива указана версия — x64. Если вы скачали Notepad++ для 32-bit, вам нужен другой файл — NppExec20160628_dll.zip . Если не получится, попробуйте другую версию — главное чтобы там был NppExec.dll файл. Распакуйте архив в директорию, где у вас установлена Notepad++plugins. В моём случае полный путь выглядит так: «C:Program FilesNotepad++plugins». Чтобы плагин заработал, перезапустите Notepad++, если он был запущен ранее.
Настраиваем плагин NppExec
В меню выберите Плагины (Plugins) -> NppExec и выполните следующие действия:
- отключите «Console Command History»;
- включите «Save all files on execute»;
- включите «Follow $(CURRENT_DIRECTORY)».
4. Добавьте команду компиляции:
- Перейдите в Плагины (Plugins) > NppExec > Execute. (или просто нажмите F6 — горячая клавиша).
- В открывшемся окне введите следующие команды:
- Нажмите кнопку Save. и введите имя скрипта, например — Compile, так как этот скрипт как раз будет выполнять компиляцию. Нажмите Save.
5. Чтобы добавить новые команды, снова перейдите в Плагины (Plugins) > NppExec > Execute. У вас будет в окне “ Command(s): «cd “$(CURRENT_DIRECTORY)” javac $(FILE_NAME)». Здесь нет кнопки для добавления новой команды, поэтому вы просто заменяем код на новый:
Затем Save. Обязательно измените имя скрипта, к примеру — «Run». Этот скрипт будет запускать выполнение программы. Нажмите Save.
Повторите действия ещё раз, введите:
cd «$(CURRENT_DIRECTORY)»
javac $(FILE_NAME)
if $(EXITCODE) !=0 goto exit
java $(NAME_PART)
:exit
Сохраните и назовите скрипт — Compile and run, по смыслу уже понятно, что данный скрипт сначала будет компилировать, а затем запускать программу. Нажмите ОК.
6. Добавьте ваши команды в меню Макросы (Macro). Для этого:
1) Перейдите в Плагины (Plugins) > NppExec > Advanced options…
2) Поставьте галочку напротив Place to the Macros submenu.
3) Введите «Run» в поле » Item name: «, затем нажмите на всплывающий список » Associated script: » и выберите скрипт под названием Run.
После этого нажмите на » Add/Modify «
и в области Menu items * вы увидите, что появилась строка » Run :: Run «.
Повторите эти действия с скриптами Compile и Compile and run, чтобы они тоже появились в окне Menu items *.
Нажмите Ок и перезапустите Notepad++.
7. Протестируйте созданные вами скрипты, открыв или создав java-файл. К примеру, создадим файл Test.java (при сохранении обязательно укажите тип — Java source file (*.java) ) и запишем в него:
public static void main(String[] args)
8. Перейдите в меню Макросы (Macro) и нажмите Compile. Затем снова зайдите в меню и нажмите Run. Или вы можете выполнить два действия сразу, по кнопке Compile and run.
9. Если вы получили ошибку при компиляции или выполнении программы, измените команду Compile или Run (в зависимости от того где у вас ошибка).
Если ошибка при компиляции измените команду Compile:
C:Program FilesJavajdk-9binjavac $(FILE_NAME)
Если ошибка при выполнении, измените команду Run:
C:Program FilesJavajdk-9binjava $(NAME_PART)
Во второй строке укажите путь к файлу javac или java на вашем компьютере. Путь к этим файлам может отличаться, будьте внимательны! Ошибка может быть вызвана тем, что Windows не знает путь к программе javac, или тем, что вы используете Notepad++ Portable Version. После изменений в Compile и Run не забудьте также про Compile and run.
Вот пример ошибки:
По сообщениям из консоли видно, что компиляция прошла успешно, но при выполнении программы произошла ошибка версий, а также не были найдены java.dll и SE Runtime Environment. Поэтому мы указываем путь для выполнения программы в скриптах Run и Compile and run.
После этого программа выполняется успешно:
10. Чтобы было удобнее компилировать и выполнять программы, настроим горячие клавиши. Перейдите в меню Запуск (Run) и выберите «Изменить горячую клавишу/удалить команду (Modify Shortcut/Delete Command…)».
Во вкладке Plugin Commands настройте горячие клавиши для быстрого запуска скриптов. Найдите имена Compile, Run, Compile and Run, по двойному клику задайте удобное вам сочетание клавиш для быстрого запуска. У меня, например, Compile and Run настроен на клавиши Ctrl + Shift + C.
После написания кода достаточно будет нажать эту комбинацию клавиш, чтобы программа была скомпилирована и запущена.
11. Если вы хотите изменить цветовую схему (тему) или выбрать другой шрифт, настроить его размер и начертание, выберите меню Опции (Settings) > Определение стилей (Style configurator…) :
12. При написании кода мне очень помогает автовставка символов. Например, когда я ставлю круглую скобку “(“, закрывающая скобка “)“ ставится автоматически. Кто работал в средах разработки (наподобие IDEA IntelliJ), знаком с этим и согласится, что это, вроде бы, мелочь, а удобно. По умолчанию автовставка выключена.
Для её включения зайдите в Опции (Settings) > Настройки (Preferences) > Автозавершение (Auto-Completion) и выберите, что вам нужно. Если нужных символов нет, можете сами создать “Заказную пару”(Matched pair).
13. При выполнении программ вы можете столкнуться с проблемой кодировки в консоли. Пример:
Решается это очень просто. Переходим в меню Плагины (Plugins) > NppExec > Console Output
И здесь вы должны выставить в значении Console Output is — «UTF-8».
Если вдруг это не помогло, попробуйте поставить галочку — Console Input is the same as Output.
14. Если вы хотите отключить проверку орфографии, нажмите кнопку «Spell Check Document Automatically (ABC)» на панели задач. После этого
кириллица не будет подчеркиваться красным. Вы также можете включить/выключить консоль по кнопке, которая расположена справа — «Show Console Dialog».
В разделе Плагины (Plugins) > NppExec > Advanced Options вы можете настроить отображение консоли при запуске программы. Выберите нужный вариант (Yes/No/Auto) в разделе Console — опция Visible (on start).
А ещё вы можете выбрать язык по умолчанию, для этого перейдите в Опции (Settings) > Настройки (Preferences) > Новый документ (New Document) и выберите Синтаксис по умолчанию (Default language). В нашем случае — Java. Теперь, когда вы открываете новую вкладку или запускаете Notepad++ с пустым файлом, типом по умолчанию будет Java и вам не придется выбирать его каждый раз.
15. Для удобства восприятия вы можете отключить системные (внутренние) сообщения консоли. Перейдите по вкладке Плагины (Plugins) > NppExec > No internal messages. После того, как вы поставите галочку, выполнение программы в консоли будет выглядеть так :
При этом ошибки будут всё равно выводиться в консоль, что весьма удобно:
Надеюсь, эта инструкция была вам полезна. Если заметите ошибки или неточности, напишите, и я исправлю! Всем удачи!
Источник: gb.ru