RU:JOSM/Build

From OpenStreetMap Wiki
Jump to: navigation, search
Доступные языки — JOSM/Build
Afrikaans Alemannisch aragonés asturianu azərbaycanca Bahasa Indonesia Bahasa Melayu Bân-lâm-gú Basa Jawa Baso Minangkabau bosanski brezhoneg català čeština dansk Deutsch eesti English español Esperanto estremeñu euskara français Frysk Gaeilge Gàidhlig galego Hausa hrvatski Igbo interlingua Interlingue isiXhosa isiZulu íslenska italiano Kiswahili Kreyòl ayisyen kréyòl gwadloupéyen kurdî latviešu Lëtzebuergesch lietuvių magyar Malagasy Malti Nederlands Nedersaksies norsk norsk nynorsk occitan Oromoo oʻzbekcha/ўзбекча Plattdüütsch polski português português do Brasil română shqip slovenčina slovenščina Soomaaliga suomi svenska Tiếng Việt Türkçe Vahcuengh vèneto Wolof Yorùbá Zazaki српски / srpski беларуская български қазақша македонски монгол русский тоҷикӣ українська Ελληνικά Հայերեն ქართული नेपाली मराठी हिन्दी অসমীয়া বাংলা ਪੰਜਾਬੀ ગુજરાતી ଓଡ଼ିଆ தமிழ் తెలుగు ಕನ್ನಡ മലയാളം සිංහල ไทย မြန်မာဘာသာ ລາວ ភាសាខ្មែរ ⵜⴰⵎⴰⵣⵉⵖⵜ አማርኛ 한국어 日本語 中文(简体)‎ 吴语 粵語 中文(繁體)‎ ייִדיש עברית اردو العربية پښتو سنڌي فارسی ދިވެހިބަސް

Зачем это нужно

  • Вы хотите посмотреть код JOSM
  • Вы хотите создать свой плагин или изменить существующий
  • Вы хотите предложить изменения в код JOSM или в стандартные стили/заготовки

Свои предложения разработчикам по-английски пишем в карточки на http://josm.openstreetmap.de/

Профильные темы на форуме: [вопросы ] [пожелания]

Вся официальная информация по разработке JOSM и плагинов находится по адресу http://josm.openstreetmap.de/wiki/DevelopersGuide

Здесь представлено просто вольное изложение для не-программистов и начинающих.

Если хочется просто посмотреть код или узнать, кто что изменял - Вам сюда: JOSM - http://josm.openstreetmap.de/browser/josm/trunk Плагины - https://trac.openstreetmap.org/browser/subversion/applications/editors/josm/plugins

Изменяем отдельные файлы дистрибутива

(Если Вы хотите изменить стили по умолчанию, заготовки или картинки без перекомпиляции JOSM)

  • Возьмите любую сборку josm-custom.jar (без контроля целостности) и поменяйте нужный файл с помошью [Far manager 3.0] (открытый, подсвечивает синтаксиc и не нужно возиться с архиваторами, войти в архив - Enter, редактирование - F4, сохранить - F2, выйти - Esc).
  • Стандартные заготовки объектов находятся в josm-custom.jar/data/defaultpresets.xml
  • Два стиля по умолчанию - josm-custom.jar/styles/standard
  • Картинки, в том числе необходимые для стилей и заготовок - в josm-custom.jar/images

Скачиваем код JOSM

  • Устанавливаем svn-клиент. Под Linux-обычно
    apt-get install subversion
    

Под Windows скачиваем[TortoiseSVN] и при установке не забываем отметить галочкой "command line client tools". Кому не нужна графическая оболочка - вместо TortoiseSVN можно поставить [Subversion for windows]

  • При необходимости настройте прокси-сервер (http, https)
  • Теперь Вы можете получать код JOSM и плагинов любой версии. В первый раз нужно зайти в любую чистую папку и выполнить команду
    svn co http://svn.openstreetmap.org/applications/editors/josm josm
    

(Из TortoiseSVN можно выбрать SVN Checkout в контекстном меню проводника Windows и вставить адрес http://svn.openstreetmap.org/applications/editors/josm)

Будет скачан код JOSM и почти всех плагинов (~120 Мб).

  • Для обновления кода до последней версии выполняем в папке josm
svn update

(или SVN update в контекстном меню Проводника для TortosieSVN)

  • Если требуется старая версия JOSM -
svn update -r номер

в папке josm/core.

Устанавливаем JDK и Ant

Apache Ant: http://ant.apache.org/bindownload.cgi

Под Linux - ищите инструкцию по установке для конкретного дистрибутива (apt-get ...). Далее - описание для Windows.

  • Если в командной строке не находится команда javac, допишите к переменной PATH в переменных среды папку ...jdk.../bin... через точку с запятой (например C:\Program Files\Java\jdk1.7.0_17\bin)

Сам C:\Program Files\Java\jdk1.7.0_17 занесите в новую переменную JAVA_HOME. Редактирование PATH : http://www.java.com/ru/download/help/path.xml http://setup-steps.blogspot.ru/2013/01/gui-editor-redmond-path.html

  • Распаковываем apache-ant-1.9.0-bin.zip в любую папку, например, C:\Java\Ant. Добавляем C:\JAVA\ant\bin к переменной PATH. Должна заработать команда ant.

Собираем JOSM или плагин

Теперь всё просто:

  • Меняем код, картинки или XML-настройки как захотим.
  • Заходим в папку josm/core
ant clean
ant dist

очищаем лишнее и пересобираем JOSM. В случае ошибок смотрим по номерам строк, что не так.

  • В папку josm/core/dist появляется ваш личный josm-custom.jar. Запускать - двойным щелчком или
java -jar dist/josm-custom.jar
  • Если нужно пересобрать плагин - сначала соберите josm-custom.jar, зайдите в plugins/папку плагина и выполните
ant clean
ant install

Плагин будет установлен в домашнюю папку JOSM и будет работать (если Вы его, конечно, включите и запускать будете достаточно свежий josm). Для многих плагинов запуск josm выполняется по команде

ant runjosm

Используем среду разработки

В консоли много кода не отредактируешь. Используйте [Eclipse] или чуть более дружелюбный [NetBeans]. Файлы проектов уже есть в папке josm/core и в некоторых плагинах (для остальных придётся создавать).

Делимся изменениями в виде патчей

  • Если Вы добавляли файлы, не забывайте сделать
svn add имя файла

чтобы система запомнила факт добавления (или Svn Add в TortosieSVN).

  • Изменив josm или плагин, запускаем в папке josm/core или plugins/... команду
svn diff > MySuperPatch.patch

В TortoiseSVN можно сделать тоже самое из контекстного меню проводника (Create patch).

  • Выкладываем файл MySuperPatch.patch как вложение в карточке JOSM trac: https://josm.openstreetmap.de/newticket , крайне желательно перед этим там зарегистрироваться.