Цель: создать простейшее оконное приложение на Java, выводить текст, переданный в качестве параметра.
Основы Java и создание простейшего приложения Hello World можно почитать здесь. Наш материал предполагает, что установлен пакет JDK, настроены переменные среды и скачана IDE JDeveloper (взять можно здесь).
Шаг 1: создание класса. Используем графические компоненты из библиотеки Swing. Если передан параметр, используем его как текст в графическом компоненте JLabel.
Шаг 2: компоновка исполняемого jar-файла. По сути jar-файл - это zip-архив, в который упакованы скомпилированные классы и метаданные, такие, как файлы MANIFEST. Чтобы jar-файл был исполняемым в JVM, файл MANIFEST.MF должен содержать параметр, содержащий имя класса с процедурой main. В процессе компоновки мы увидим, каким образом задается этот параметр.
Выбираем в контекстном меню проекта/приложения пункт "Project Properties". Нас интересует пункт Deployment.
Шаг 3: запуск с параметром из bat-файла. Листинг файла AQTest.bat:
Основы Java и создание простейшего приложения Hello World можно почитать здесь. Наш материал предполагает, что установлен пакет JDK, настроены переменные среды и скачана IDE JDeveloper (взять можно здесь).
Шаг 1: создание класса. Используем графические компоненты из библиотеки Swing. Если передан параметр, используем его как текст в графическом компоненте JLabel.
import javax.swing.JFrame;
import javax.swing.JLabel;
public class AQTest {
public static void main(String[] args) {
AQTest aQTest = new AQTest();
JFrame f = new JFrame("GUI Application");
f.setSize(600,200);
f.setVisible(true);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
javax.swing.JLabel label = new JLabel();
label.setFont(new java.awt.Font("Tahoma", 0, 24));
label.setForeground(new java.awt.Color(255, 0, 0));
label.setText(args.length==0?"Empty input":args[0]);
f.add(label);
}
}Если запустить данный класс на выполнение, то увидим окно с надписью "Empty input", т.к. класс был запущен без параметров.Шаг 2: компоновка исполняемого jar-файла. По сути jar-файл - это zip-архив, в который упакованы скомпилированные классы и метаданные, такие, как файлы MANIFEST. Чтобы jar-файл был исполняемым в JVM, файл MANIFEST.MF должен содержать параметр, содержащий имя класса с процедурой main. В процессе компоновки мы увидим, каким образом задается этот параметр.
Выбираем в контекстном меню проекта/приложения пункт "Project Properties". Нас интересует пункт Deployment.
Добавляем новый профиль развертывания, Вводим имя будущего jar-файла.
В появившемся окне указываем местоположение будущего jar-файла и имя класса, содержащего процедуру main. Это имя подставится в автоматически создаваемый файл метаданных MANIFEST.MF. Таким образом, при выполнение скомпонованного файла начнется с метода AQTest.main():
Если проект включает сторонние библиотеки, необходимо перейти в раздел Library Dependencies и выбрать те из них, которые необходимо включить в компонуемый файл.
Всё, мы получили файл AQTest.jar, который можем запускать как из командной строки, так и двойным левым кликом.Шаг 3: запуск с параметром из bat-файла. Листинг файла AQTest.bat:
@echo off @start javaw -jar AQTest.jar %1javaw.exe - это оконная версия консольного приложения java.exe. В данном случае мы используем оконное приложение, т.к. оно не требует ожидания окончания запущенной им программы. Запускаем bat-файл и убеждаемся, что всё работает, как надо.
Комментариев нет :
Отправить комментарий