| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java: Общие вопросы > Как вызвать первую программу из второй? |
| Автор: kornata 24.4.2010, 16:37 |
| Как вызвать первую программу из второй? |
| Автор: jk1 24.4.2010, 16:45 | ||||||
В самом простом случае так:
Если надо взаимодействовать с запущенным процессом, то нужно запускать так:
Ну и конечно не рекомендуемый, но тем не менее работающий вариант:
|
| Автор: kornata 24.4.2010, 16:48 |
| Не понятно, можно объяснить чайнику? Добавлено через 2 минуты и 3 секунды Это кусочек кода и я не могу посматреть, как это работает. Можно примеры двух простеньких программ, где одна вызывает другую? |
| Автор: jk1 24.4.2010, 16:55 | ||
| 1) В качестве "первой" из вашей задачи возьмите любую программу из установленных на вашей системе 2) "Вторую" напишите сами, пример для первого из описанных мной способов:
В пример надо не забыть подставить путь к исполняемому файлу "первой" программы 3) Скомпилируйте и запустите класс, вы увидите как запустится "первая" программа |
| Автор: kornata 24.4.2010, 17:38 |
| jk1, спасибо, всё получилось! |
| Автор: kornata 24.4.2010, 17:55 |
| Ну exeя запустила, а джава программа не запускается: Exception in thread "main" java.io.IOException: Cannot run program "Data.java": CreateProcess error=2, The system cannot find the file specified at java.lang.ProcessBuilder.start(ProcessBuilder.java:459) at pr1kor.Main.main(Main.java:10) Caused by: java.io.IOException: CreateProcess error=2, The system cannot find the file specified at java.lang.ProcessImpl.create(Native Method) at java.lang.ProcessImpl.<init>(ProcessImpl.java:81) at java.lang.ProcessImpl.start(ProcessImpl.java:30) at java.lang.ProcessBuilder.start(ProcessBuilder.java:452) ... 1 more |
| Автор: jk1 24.4.2010, 18:00 | ||
все же написано - системе не удается найти указанный файл. Скорее всего вы неверно указали путь к нему или у вас нет прав на доступ к файлу. |
| Автор: kornata 24.4.2010, 18:35 |
| Exception in thread "main" java.io.IOException: Cannot run program "C:\Documents and Settings\st52309\My Documents\NetBeansProjects\Pr1kor\src\pr1kor\Data.java": CreateProcess error=193, %1 is not a valid Win32 application at java.lang.ProcessBuilder.start(ProcessBuilder.java:459) at pr1kor.Main.main(Main.java:10) Caused by: java.io.IOException: CreateProcess error=193, %1 is not a valid Win32 application at java.lang.ProcessImpl.create(Native Method) at java.lang.ProcessImpl.<init>(ProcessImpl.java:81) at java.lang.ProcessImpl.start(ProcessImpl.java:30) at java.lang.ProcessBuilder.start(ProcessBuilder.java:452) ... 1 more Java Result: 1 |
| Автор: MaxPayneC 24.4.2010, 19:35 |
| Способами, которые описал jk1, можно запускать исполняемые файлы. *.java - это исходный код, а не исполняемый файл. |
| Автор: kornata 24.4.2010, 19:39 |
| MaxPayneC, и как тогда нужно запускать? |
| Автор: MaxPayneC 24.4.2010, 20:00 |
| Вам нужно запустить другую программу, написанную на джаве, т.е. файл *.class? |
| Автор: jk1 24.4.2010, 20:19 |
| kornata, скажите, а вы понимаете разницу между файлом исходного кода и исполняемым файлом? .java - это исходный код, сам по себе он не может быть запущен .class - так называемый байт-код, получаемый из .java путем компиляции вывод: .java файл нельзя запускать так, как вы это делаете, предварительно его необходимо скомпилировать. |
| Автор: kornata 25.4.2010, 10:40 |
| Запустила класс, а что нужно дописать, чтобы вывелись результаты первой программы? |
| Автор: kornata 25.4.2010, 17:18 |
| Неужели никто не знает? |
| Автор: kornata 26.4.2010, 12:58 |
| Помогите запустить вторую программу. |
| Автор: yeputons 26.4.2010, 21:19 | ||||||
1)Пишем первую программу (пример):
2)Компилируем. получили файл First.class. поместили его в одну директорию со второй прогой:
3)Запускаем 4)??? 5)PROFIT! Аналогично мы можем вызвать любой другой метод из первого класса:
Главное, чтобы при компиляции javac смог найти First.class |
| Автор: Dancer 27.4.2010, 10:28 |
| http://forum.vingrad.ru/forum/topic-297864.html Дык ведь всё же работает, уже давно ответ давался. чего не так то? |