powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Eclipse. Пару вопросов.
5 сообщений из 5, страница 1 из 1
Eclipse. Пару вопросов.
    #33769089
GMax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Eclipse только осваиваю, поэтому возникают сложности в понимании принципов функционирования платформы.
Собственно вопросов пока 2, может кто подскажет.
Архитектура проекта на текущий момент такая. Само приложение собирается как продукт, из нескольих плагинов, два плагина мои, остальные это либо стандартные плагины эклипса, либо плагины, которые просто содержат сторонние библиотеки, например, jawin.

Вопрос 1.
Для успешной работы используемой библиотеки (в нашем случае она собрана как плугин) необходимо при запуске приложения передать параметр:
Код: plaintext
-Dorg.jawin.hardlib=[путьДоDLL]\jawin.dll
Хотелось бы эту dll хранить где-то в папке собираемого продукта. Но заранее неизвестно в какую папку он будет установлен.
Вопрос, как поместить эту dll в проект, и где что прописать, чтобы независимо от того куда поставится приложение эта dll была видна.

Вопрос 2.
Похожий. В проекте я храню шаблоны документов и др. файлы. Их я включил в отдельный свой плагин, который не стал упаковывать в jar, а просто он у меня хранится в своей папке. Как внутри моего приложения получить путь папки этого (ну или какого-то другого) плагина.

В общем как смог изложил :) Надеюсь на помощь.
...
Рейтинг: 0 / 0
Eclipse. Пару вопросов.
    #33769741
GMax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может через одно место, но нашел решение.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
				// Получаем путь, куда установлен продукт
				String installPath = Platform.getInstallLocation().getURL().getPath();
				// Вначала пчему-то вписывается один слэш, уберем его, он нам не нужен
				installPath = installPath.substring( 1 ); 
				
				 final  String JAWIN_PLUGIN_ID = "org.jawin";
				 final  String JAWIN_DLL_NAME = "jawin.dll";
				 final  String JAWIN_DLL_PATH = "lib/";
				
				// Получаем путь до плугина jawin
				Bundle bundle = Platform.getBundle(JAWIN_PLUGIN_ID);
				String bundlePaths[] = bundle.getLocation().split("@");
				Path bundlePath =  new  Path(bundlePaths[ 1 ]);
				String absPath = bundlePath.toString();
				// Теперь его немного надо подкорректировать,  в частности убрать первые 15 ненужных символов
				absPath = absPath.substring( 15 );
				
				// Теперь составляем полный путь до библиотеки
				String fullPath = installPath + absPath + JAWIN_DLL_PATH + JAWIN_DLL_NAME;
				
				// И добавляем все это в соотв. свойство
				System.setProperty("org.jawin.hardlib",fullPath);
...
Рейтинг: 0 / 0
Eclipse. Пару вопросов.
    #33769873
a78
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
a78
Гость
я бы просто в каталоге своего продукта создал бы директорию, к примеру \lib, бросил бы туда dll-ку и инициировал бы к ней путь как
String path = "./lib/<name>.dll";
и так же любой путь
...
Рейтинг: 0 / 0
Eclipse. Пару вопросов.
    #33771545
GMax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не совсем понял, как в каталоге продукта создать каталог? Чтобы он при каждой сборке продукта создавался сам и туда выкладывалась dll. Ant?
И все-таки dll необходимо хранить правильнее наверное рядом с самим плагином, который ее использует. Вопрос как сделать, чтобы она автоматом прописывалась в classpath, и чтобы она еще в jar была? В swt же тоже похожий принцип, и dll хранится в jar, и все успешно работает без всяких инициализаций в коде, только плагин подключаешь к проекту как обычно.
...
Рейтинг: 0 / 0
Eclipse. Пару вопросов.
    #33773880
GMax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как указать для конкретного plug-in project, чтобы при сборке он не помещался в jar?
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Eclipse. Пару вопросов.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]