1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/supermap-SuperMap-iDesktop-Cross

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
SuperMap iDesktop Cross 配置指南(Linux 篇).md 20 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 26.11.2024 14:39 95d4464

JDK

В данной статье в качестве примера используется 64-битная операционная система Ubuntu 16.04.

Получение

SuperMap iDesktop Cross использует JDK версии JDK 1.7.0_80, также известный как Java SE Development Kit 7u80. Вы можете скачать указанный JDK с официального сайта Java. Выберите соответствующий пакет для вашей операционной системы, в данном случае для Ubuntu рекомендуется загрузить файл Linux x64 - jdk-7u80-linux-x64.tar.gz.

Установка

  1. Откройте терминал и перейдите в нужную папку, например:

    $ cd Documents/java/
  2. Переместите скачанный файл tar.gz в текущую рабочую папку;

  3. Распакуйте и установите файл, используя следующую команду:

    $ tar zxvf jdk-7u80-linux-x64.tar.gz

  4. Удалите файл tar.gz.

Для получения более подробной информации обратитесь к официальной инструкции по установке 64-разрядного JDK для Linux.

Далее в тексте JAVA_HOME будет использоваться для обозначения корневого каталога JDK.

Инструменты разработки

SuperMap iDesktop Cross — это настольная ГИС-платформа на основе языка Java. Для управления проектами используется Maven, а для разработки поддерживаются такие среды, как IntelliJ IDEA и Eclipse.

IntelliJ IDEA (рекомендуется)

IntelliJ IDEA предоставляет обширные и удобные инструменты для разработки и отладки, а также включает встроенный менеджер проектов Maven. Рекомендуется использовать IntelliJ IDEA в качестве инструмента разработки проекта. Скачайте IntelliJ IDEA с официального веб-сайта и установите его в любой каталог.

Обратите внимание:

Для использования последней версии IntelliJ IDEA требуется JDK версии 1.8 или выше. Если вам нужна последняя версия IntelliJ IDEA, установите JDK версии 1.8 или выше одновременно.

Eclipse

Получение

Скачайте Eclipse для Linux с официального веб-сайта Eclipse. Рекомендуется использовать версию Eclipse for RCP and RAP Developers. Например, можно использовать следующую команду:

$ tar zxvf eclipse-rcp-mars-linux.tar.gz

Обратите внимание:

Возможно, для последней версии Eclipse потребуется JDK версии 1.8 или выше. Если нужна последняя версия Eclipse, установите JDK версии 1.8 или выше одновременно.

Конфигурация

Перейдите в распакованную папку eclipse и откройте файл eclipse.ini. В начале файла добавьте следующую строку:

-vm
JAVA_HOME/jre/bin

Сохраните файл, закройте его и запустите Eclipse.

SuperMap iObjects Java

Получение

SuperMap iDesktop Cross является вторичным продуктом разработки на основе SuperMap iObjects Java. Разработка и использование этого продукта требуют приобретения или настройки лицензии на SuperMap iObjects Java либо использования облачной лицензии.

Обратите внимание:

  1. SuperMap iDesktop Cross открыт и бесплатен, но SuperMap iObjects Java является платным продуктом. Продукт доступен для пробного использования в течение определённого времени, после чего необходимо обратиться на официальный сайт SuperMap для покупки.
  2. Для расширения разработки внешними пользователями рекомендуется использовать соответствующие версии тегов и SuperMap iObjects Java. В противном случае программа может не запуститься.

Загрузите необходимые компоненты SuperMap iObjects Java с официального сайта SuperMap. Здесь загружается SuperMap iObjects Java 8C SP1 Runtime for Linux. Пример команды установки: ​
$ tar zxvf SMO_Java_801_RumTime_13228_53527_64_x64_linux_gcc_CHS.tar.gz

Здесь OBJECTS_HOME используется для обозначения каталога компонентов. Выберите соответствующую версию для вашей 32- или 64-битной операционной системы.

Конфигурация лицензии

Если вы впервые используете продукты SuperMap, необходимо выполнить настройку лицензии. В среде Linux для проверки лицензии и запуска продукта необходимо установить драйвер лицензии. После установки вы получите 90 дней пробной лицензии на использование продуктов SuperMap GIS.

Драйвер лицензии находится в каталоге Support/ пакета компонентов под именем aksusbd-2.0.1-i386.tar.

Перед установкой драйвера лицензии необходимо войти в систему с правами root. В Ubuntu выполните следующие шаги для переключения на пользователя root:

1. Откройте терминал.
2. Установите пароль root (если он уже установлен, пропустите этот шаг). Команда: $ sudo passwd root
3. Войдите в систему как пользователь root. Команда: $ sudo -s

Перейдите в каталог пакета компонентов Support/, следуя инструкциям ниже, чтобы установить драйвер.

1. Распакуйте файл драйвера. Команда: $ tar -xvf aksusbd-2.0.1-i386.tar
2. Перейдите в распакованный каталог. Команда: $ cd aksusbd-2.2.1-i386
3. Установите драйвер. Команда: $ sh dinst

Если установка не удалась, терминал может вывести следующее сообщение:

dpkg-query: no packages found matching aksusbd
The 32bit support is missing. Please install the x86 compatibility
packages required by your distribution and retry the installation.
See the installation guide for more details.
Aborting...

Выполните следующие действия, чтобы установить недостающие библиотеки поддержки:

1. $ apt-get install libc6-i386
2. $ apt-get install ia32-libs

После успешной установки повторите попытку установки драйвера.

Получение кода

Используйте Git, чтобы получить код. Адрес исходного кода:

Разветвления SuperMap iDesktop Cross:

  • develop: ветка для разработки командой проекта, использующая не выпущенные компоненты iObjects Java, внешние разработчики не могут расширять разработку на этой ветке. Это ветка по умолчанию;
  • master: основная ветка, поддерживающая последнюю официальную версию выпуска;
  • tag: теги на основной ветке для каждой исторической версии выпуска.

Откройте терминал, перейдите в нужный каталог и используйте следующую команду для клонирования кода (возьмём в качестве примера OSChina Remote Repository). Перейдите в каталог SuperMap-iDesktop-Cross после клонирования, чтобы просмотреть весь контент проекта.

$ git clone https://git.oschina.net/supermap/SuperMap-iDesktop-Cross.git

Эта команда клонирует весь удалённый репозиторий по умолчанию в ветку develop. Однако для расширения разработки внешним пользователям требуется использовать теги версий. Поэтому следуйте следующим шагам, чтобы переключиться на нужную ветку tag.

1. **Войти в каталог SuperMap-iDesktop-Cross**
  1. Войти в каталог SuperMap-iDesktop-Cross:

    • $ cd SuperMap-iDesktop-Cross;
  2. Просмотреть список всех тегов репозитория:

    • $ git tag -l;
  3. Выбрать нужный тег:

    • git checkout tags/<tag_name>

Примечание: тег — это снимок текущего состояния репозитория, который нельзя изменить. Если необходимо внести изменения и отправить их в текущий репозиторий, выполните следующие действия вместо шага 3:

*$ git checkout tags/<tag_name> -b <branch_name>*

Далее в тексте CROSS_HOME используется для обозначения корневого каталога проекта.

Если в правом нижнем углу CROSS_HOME есть замок, у текущего пользователя нет прав на чтение и запись, пожалуйста, переключитесь на пользователя root или откройте терминал, перейдите в каталог того же уровня, что и CROSS_HOME, и используйте следующую команду, чтобы изменить права доступа на чтение и запись:

$ sudo chmod -R 777 SuperMap-iDesktop-Cross/

Запуск программы

IntelliJ IDEA

  1. Скопируйте все файлы из каталогов OBJECTS_HOME/Bin/ или OBJECTS_HOME/Bin_x64/ в каталог CROSS_HOME/bin/, если каталог bin не существует, создайте его самостоятельно.
  2. Войдите в каталог CROSS_HOME и дважды щёлкните файл SuperMap iDesktop Cross.ipr, чтобы запустить IntelliJ IDEA и загрузить проект.
  3. В IntelliJ IDEA откройте панель управления Maven Projects, разверните iDesktop.cross - Lifecycle, дважды щёлкните install, чтобы установить зависимости, и дождитесь завершения процесса.
  4. На панели инструментов IntelliJ IDEA выберите пункт запуска iDesktop Startup Linux и нажмите Shift + F10 (или Shift + F9 для отладки), чтобы запустить SuperMap iDesktop Cross.

Eclipse

  1. Скопируйте все файлы из каталогов OBJECTS_HOME/Bin/ или OBJECTS_HOME/Bin_x64/ в каталог CROSS_HOME/bin/, если каталог bin не существует, создайте его самостоятельно.
  2. Откройте Eclipse и выберите новую рабочую среду Eclipse.
  3. Импортируйте проект. Выберите File - Import - Maven - Exitsting Maven Projects Next - Browse, выберите CROSS_HOME в окне файла, нажмите Finish, чтобы импортировать проект.
  4. Настройте установленные JREs. Выберите Window - Preferences - Java - Installed JREs, нажмите Add, затем выберите Standard VM - Next - Directory, укажите корневой каталог установки JDK 1.7.0_80, нажмите Finish, отметьте только что добавленный JDK 1.7.0_80 и нажмите OK, чтобы завершить настройку.
  5. Щёлкните правой кнопкой мыши на iDesktop.cross и выберите Run As - Maven install, чтобы установить зависимости. Дождитесь завершения.
  6. Разверните iDesktop.cross, щёлкните правой кнопкой мыши и выберите Startup-Eclipse-Linux.launch, затем Run As - Startup-Eclipse, чтобы запустить SuperMap iDesktop Cross.

Внимание: если возникают проблемы с лицензиями и т. д., обратитесь к разделу «SuperMap iObjects Java — конфигурация лицензий» в предыдущей части.

Расширение разработки

В этой части мы рассмотрим процесс расширения разработки на примере IntelliJ IDEA. Для других IDE, таких как Eclipse, процесс может немного отличаться, но организация проекта и конфигурация pom-файла остаются одинаковыми.

Создание нового проекта

  1. Выделите узел SuperMap-iDesktop-Cross и щёлкните по нему правой кнопкой мыши, чтобы открыть контекстное меню. Затем выберите New - Module, чтобы открыть мастер создания нового модуля.
  2. В левой панели выберите Maven, нажмите Next, чтобы перейти к следующему шагу.
  3. Введите произвольное имя ArtifactId, например NewPlugin, остальные параметры оставьте по умолчанию и нажмите Next.
  4. Добавьте «\NewPlugin» после Content root и нажмите Finish, чтобы создать новый модуль.

Регистрация плагина

Новый созданный модуль NewPlugin должен быть зарегистрирован как плагин для SuperMap iDesktop Cross, чтобы он мог работать правильно. Откройте файл Activator.java в коде проекта и внесите следующие изменения:

public void start(BundleContext bundleContext) throws Exception { Activator.context = bundleContext;

    // Регистрация плагина SuperMap iDesktop Cross
    Application.getActiveApplication().getPluginManager().addPlugin("NewPlugin", bundleContext.getBundle());

    // Успешная регистрация плагина
    System.out.println("MyPlugin Start.");
}

После успешной регистрации вы можете приступить к разработке.

Конфигурация проекта

  1. Разверните узел SuperMap-iDesktop-Cross.
  2. Откройте файл module-pom-template.xml, который является шаблоном конфигурации pom для расширенной разработки плагинов. Конфигурационные элементы, заключённые в символы **, являются обязательными для заполнения.
  3. Разверните модуль NewPlugin и откройте файл pom.xml. Используйте шаблон для настройки.
  4. В правой панели IntelliJ IDEA найдите панель управления Maven Projects и разверните NewPlugin - Plugins - bundle. Дважды щёлкните bundle:manifest, чтобы сгенерировать файл манифеста, и дождитесь его завершения.

Обратите внимание: шаблон предоставляет только базовую конфигурацию pom, которая необходима. Более подробную и богатую конфигурацию проекта можно настроить в соответствии с вашими потребностями. Файл манифеста содержит метаданные, необходимые для работы OSGI-плагина. Если есть изменения в зависимостях OSGI, перед запуском необходимо повторно сгенерировать манифест.

Зависимости

Проектные зависимости

Core, Process и Controls являются основными библиотеками проекта и обязательны для всех плагинов. Core, Process и Controls — основные библиотеки всего проекта. Core зависит от SuperMap iObjects Java и других сторонних библиотек и экспортирует их классы. Process является основным интерфейсом для визуального моделирования и предоставляет основные визуальные интерфейсы. Controls зависит от Core и Process, и эти три библиотеки составляют основную архитектуру всего проекта Cross. При разработке собственных расширений необходимо зависеть от Core и Controls.

OSGI-зависимости

Этот проект основан на стандарте OSGI R4 и использует фреймворк Felix. Различные Bundle имеют уникальные правила зависимости друг от друга. Подробная конфигурация уже включена в Maven-конфигурацию проекта.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/supermap-SuperMap-iDesktop-Cross.git
git@api.gitlife.ru:oschina-mirror/supermap-SuperMap-iDesktop-Cross.git
oschina-mirror
supermap-SuperMap-iDesktop-Cross
supermap-SuperMap-iDesktop-Cross
develop