Среда, 16.07.2025, 05:16
Приветствую Вас Гость | RSS
Главная | Каталог статей | Регистрация | Вход
.:: Меню ::.
.:: Категории каталога ::.
Разное [5]
Различные темы по программированию
Пакет SWT [4]
Практикуемся в написании оконных приложений на Java
Среды разработки, компиляторы и т.п [3]
Сравнения, описания, плюсы и минусы сред разработки. Сравнение компиляторов.
Java [8]
Объектно-ориентированные соображения.
Си++ [19]
Коротко и ясно
Ассемблер [6]
Машинные коды, побитно :)
Форма входа
.:: Поиск ::.
.:: Дополнительно ::.
    Хостинг от Loqo.ru
             .:: Коментируем ::.
Главная » Статьи » Текстовый материал » Пакет SWT

Варианты запуска GUI Java приложения использующего SWT
Во первых, если у вас нет среды разработки Eclipse, надо скачать здесь пакет SWT.
Лучше конечно установить себе Eclipse.
В эклипсе библиотека SWT лежит в папке plugins.
Пакет представляет собой архив классов.
Нам понадобится папка org и динамические библиотеки (dll которые).

Допустим, у нас имеется папка Game.
В этой папке находится папка src с подпапкой babgamegui и файлом Main.java в ней.
Создадим папку compile в папке Game.
Чтобы скомпилировать java файл нам потребуется ввести следующую команду находясь в папке Game:
javac -cp ./org.eclipse.swt.win32.win32.x86_3.2.1.v3235e_swg20070503.jar; -d ./compile src/babgamegui/Main.java
Название библиотеки естественно зависит от версии Eclipse, так что внимательней.
Теперь в папке compile находятся наши class файлы.

Самое интересное, открываем файл org.eclipse.swt.win32.win32.x86_3.2.1.v3235e_swg20070503.jar (он может быть свежее версией или наоборот) архиватором и распаковываем папку org и dll'ки в папку Game.
Создаём Java архив в папке Game.
Напомню, что babgamegui - не просто папка, наш класс находится в пакете, а физически он представляет собой папку.

Создаём манифест.
Кстати, по умолчанию, в манифесте нет строки main class (Main-Class:), утилита jar не создаёт её автоматически, если её не попросить об этом специально.
Файл манифеста назовём - manif.

Code

Main-Class: babgamegui.Main
Manifest-Version: 6.6.6


Не забываем опустить каретку на строку ниже после строки Manifest-Version: 6.6.6
Напомню, что конец файла должен быть обозначен символами перевода строки и возврата каретки. (ну это просто Enter нажать в конце последней строки, если кто не в курсе)

Пишем в командной строке jar cmf manif Main.jar * создаётся файл Main.jar
Можете открыть его архиватором и посмотреть, что туда попало.

Запуск: java -jar Main.jar
Обязательно в каталоге где происходит запуск наличие динамических библиотек. (они весят немного)
Вообще, можно указать любую папку с dll'ками при помощи параметра java.library.path (пример использования ниже)

Без упаковки запуск осуществляется так:
java -cp "./org.eclipse.swt.win32.win32.x86_3.2.1.v3235e_swg20070503.jar";./ -Djava.library.path="./" babgamegui.Main
Динамические библиотеки:
swt-awt-win32-3235.dll
swt-gdip-win32-3235.dll
swt-wgl-win32-3235.dll
swt-win32-3235.dll
По идее нам нужна только последняя, ну да ладно, пусть будут все.

Вот такое запутанное объяснение получилось, если возникнут вопросы, не стесняйтесь, спрашивайте.

Что-то типа этого должно быть у вас:


Командные файлы созданы для удобства, но можно и без них.
Я экспериментировал с тремя например.

Папки compile не вижу что-то, видимо удалил после упаковки.

Категория: Пакет SWT | Добавил: C0demaker (26.04.2009)
Просмотров: 4591 | Комментарии: 4 | Рейтинг: 0.0/0
Всего комментариев: 4
0  
4 statmeharty   (22.11.2012 08:26) [Материал]
Вау, прикольно

0  
3 GliseeGoK   (12.11.2012 11:04) [Материал]
Данный пост — одно из редких исключений, когда читаешь с интересом и что-то для себя выносишь. Спасибо автору. Добавлю в избранное. smile

0  
2 WestyType   (29.07.2012 19:23) [Материал]
Ну что тут скажеш

_________________

0  
1 C0demaker   (12.03.2012 22:21) [Материал]
Буду рад, если статья чем то поможет.


Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Ant1 © 2025