Зміст
Майже стабільна версія
Остання майже стабільна версія завжди знаходиться за посиланням: josm-tested.jar — ми не називаємо її «випуском» тому що, в той час як вона є більш надійною порівняно із тестовою версією, вона не проходить через численні перевірки потрібні для випуску стабільної версії.
Нічні збірки
Ви завжди можете отримати нічну збірку за посиланням: josm-latest.jar. Велика кількість користувачів використовують її для повсякденної роботи.
Запуск
Для роботи JOSM потрібне середовище Java Runtime Environment версії 11 чи новіше.
Microsoft Windows
Подвійним клацанням на jar-файлі.
Якщо це на спрацьовує, Вам можливо треба встановити Java Runtime
Якщо ви правите дуже великі обсяги інформації, Ви можете отримати повідомлення про помилку "out of memory" (недостатньо пам’яті). Щоб цього уникнути, об’єм пам’яті можливо збільшити.
Створіть ярлик подібний до прикладу:
C:\WINNT\system32\java.exe -jar -Xmx1024M "C:\PATH-TO-JOSM\josm-latest.jar"
Щоб уникнути відкритих консольних вікон Java, ви можете використовувати javaw.exe
замість java.exe
.
Linux / *BSD
- пакунки
- В деяких дистрибутивах існують пакунки для встановлення JOSM за допомоги вашого улюбленого менеджера пакунків із сховищ дистрибутиву. Отже версії JOSM в цих пакунках можуть бути доволі застарілими на відміну від файлів .jar з головної сторінки, вони зазвичай краще підходять до оточення та встановлюють потрібні залежності і можуть запускатись за допомоги меню.
До уваги: Але не існує жодних проблем із встановлення JOSM з пакунка та використання файлів .jar про яке йдеться далі.
Якщо у вашому дистрибутиві відсутній пакунок або ви не бажаєте його використовувати, ви можете завантажити JOSM (файл .jar) з головної сторінки (протестовану версію або ж версію, що перебуває в стані розробки) або зібрати JOSM із сирців.
- використання оболонки
-
Перейдіть до теки де знаходиться josm-latest.jar та введіть
для запуску. Замініть
java -jar josm-latest.jar
josm-latest.jar
на ім’я завантаженого jar-файлу, наприкладjosm.jar
для стабільної версії.
Якщо це не допомогло, спробуйте встановити змінну JAVA_HOME призначивши їй місце розташування java, наприклад:
export JAVA_HOME=/usr/lib/sun-j2se6.0-jdk java -jar ''josm.jar''
- KDE
- Ось посібник як налаштувати ваше оточення для запуску jar-файлів клацаючи на них.
- GNOME
- Клацніть правою клавішею миші на JAR-файлі та оберіть Open with "OpenJDK11 Runtime", чи щось подібне.
- XGL/Compiz
-
Наберіть це в оболонці:
як про це йдеться у: http://kubasik.net/blog/index.php/2006/06/19/java-sun-150-and-xglcompiz-on-ubuntu/
export AWT_TOOLKIT=MToolkit && java -jar josm-test.jar
- Пусте вікно при запуску
AWT до JDK7 не дуже добре працює з віконними менеджерами (такими як: xmonad, awesome, dwm, ratpoison, Ion3, …), в результаті головне вікно не показується правильно під час запуску. Дивись обхідні шляхи для вирішення цієї проблеми у Вікі Awesome. Ось також рекомендації для xmonad, як зробити wmname.
MacOS
- Якщо у вас є завантажений
josm-latest.jar
, ви можете запустити JOSM клацнувши на файл josm-latest.jar у MacOS Finder (ви повинні отримати попередження про відкриття файлу отриманого з інтернет — прийміть його).
Цього достатньо для запуску JOSM у переважній кількості випадків.
- Якщо ви працюєте в Mountain Lion, вам потрібно тимчасово відключити Gatekeeper. В іншому випадку, ви не зможете відкрити JOSM і під час запуску JOSM, будете отримувати повідомлення про помилку "JOSM.app пошкоджений і не може бути відкритий. Ви повинні перемістити його в Смітник." Відключіть Gatekeeper відкривши Системні налаштування > Приватність та безпека, та встановивши в пункті 'Дозволити застосункам завантажуватись' значення 'Звідусіль'. Після того, як ви відкриєте застосунок, ви можете увімкнути Gatekeeper знов, і з запуском JOSM у вас не виникатиме ніяких проблем. Див. це та #7904 для отримання більш докладної інформації.
- Однак, якщо вам треба запустити його із додатковими параметрами Java (наприклад -Xmx1024M), ви можете скористатись "Терміналом" MacOS для запуску JOSM (Java) вручну:
Запустить "Термінал" (наприклад набравши "Terminal" у вікні пошуку Spotlight)
- Тепер у вас є два варіанти:
- наберіть наступну команду та натисніть "Enter" для запуску JOSM без будь-яких особливих параметрів java (простий запуску JOSM, як в першому пункті):
Де "FOLDER" замініть на назву теки з josm-latest.jar. Якщо ви завантажили файл до стандартної теки MacOS "Downloads", це буде виглядати так:
java -jar FOLDER/josm-latest.jar
java -jar Downloads/josm-latest.jar
- щоб використати особливі опції java додайте їх відраз після "java"
- наберіть наступну команду та натисніть "Enter" для запуску JOSM без будь-яких особливих параметрів java (простий запуску JOSM, як в першому пункті):
Якщо, наприклад, у вас були випадки з повідомленням "Не вистачає пам’яті" (якщо ви намагались завантажити фотографії прив’язані до координат), ви повинні запускати JOSM наступним чином:
java -Xmx512M -jar FOLDER/josm-latest.jar
Це дозволить JOSM використовувати до 512 MB пам’яті RAM. Параметр java "-Xmx512M" задає максимальний розмір кучі Java до 512 MB. Ви можете замінити -Xmx512M будь-яким іншим, прийнятним для вашої системи значенням (навіть -Xmx1024M чи більше).
До речі. Щоб отримати огляд всіх опцій для запуску Java, ви можете ввести:
java -help
- Якщо ви використовуєте пакунок для Mac OS X та бажаєте змінити параметри для запуску, вам потрібно змінити файл Info.plist в теці /Applications/JOSM.app/Contents. Наприклад, для збільшення максимального розміру кучі Java з 512MB до 768MB, замість того щоб це постійно робити в терміналі чи XCode, змініть параметр в JVMOptions з -Xmx512m на -Xmx768m.
Отримання сирців
JOSM розповсюджується під ліцензією GPL і, таким чином, ви можете отримати сирці, змінювати їх та самостійно розповсюджувати. Отримати сирці можливо за допомогою subversion
svn co https://josm.openstreetmap.de/svn/trunk josm
Ви також можете переглядати поодинокі файли черз веб-інтерфейс svn (чи browser).
Компіляція
Використовуючи ant
Найпростішим способом зібрати JOSM за допомогою Java встановленій на вашому комп’ютері. Перейдіть до теки з сирцями JOSM та наберіть в терміналі:
ant
Якщо все добре, буде створено файл dist/josm-custom.jar
.
Використовуючи eclipse
Використовуйте eclipse разом із файлами .project
та .classpath
, що надаються. Просто додайте новій проект Java використовуючи теку із сирцями JOSM у якості існуючого шляху.
В Eclipse 3.5.2 з останнім JOSM (10 Серпня 2011), ви можете отримати проблеми з компілюванням через проблеми компілювання Mappaint MapCSS у ново встановленому Eclipse. По-перше, вам потрібен JavaCC втулок для Eclipse. Для встановлення його в Eclipse, перейдіть Довідка -> Нове ПЗ… (Help->New Software…) та додайте сайт http://eclipse-javacc.sourceforge.net/ в якості джерела, та встановіть JavaCC Eclipse Plug-in. Потім у Навігаторі пакунків (Package Explorer), розгорніть org.openstreetmap.josm.gui.mappaint.mapcss, клацніть правою кнопкою миші на MapCSSParser.jj, та виконайте "Компілювати з JavaCC" ("Compile with JavaCC"). Це призведе до розміщення нових java-файлів у пакунку org.openstreetmap.josm.gui.mappaint.mapcss.parsergen, якщо ні — вам потрібно створити його вручну (клацніть правою кнопкою миші та оберіть пункт меню створити пакунок), потім перетягніть до нього нові файли, які ви тільки що створили (їх дуже просто знайти по світло-сірому кольору, що означає те що вони були скомпільовані з MapCSSParser.jj). Це має вирішити будь-які питання імпорту MapCSSStyleSource.java, і тепер ви повинні мати можливість компілювати JOSM.
Якщо ви намагаєтесь компілювати JOSM з сирців у Eclipse та отримуєте повідомлення про помилку схожу на "The method marktr(String) is undefined for the type SomeType" гляньте на варіанти її вирішення у списку розсилки.
Також на YouTube є пара відео-посібників, які показують як отримати сирці JOSM в Eclipse та як отримати сирці втулків JOSM в Eclipse.
Використовуючи javac
Ви також можете зібрати JOSM із сирців без ant або eclipse. Щоб це зробити, запустіть javac
з файлом org/openstreetmap/josm/gui/MainApplication.java
та усіма бібліотеками з ../lib/*.jar
зазначеними у змінній classpath (вам треба указати всі послідовності). Якщо у вас Linux, це буде виглядати приблизно так:
- Отримання сирців
svn co https://josm.openstreetmap.de/svn/trunk josm # ''великий обсяг виводу після цього'' cd josm/ mkdir build
- Компіляція та запуск
javac -cp .:src -d build src/org/openstreetmap/josm/gui/MainApplication.java java -cp .:build org.openstreetmap.josm.gui.MainApplication
Модульні тести
Зручніше за все для проведення тестів використовувати IDE такі як Eclipse чи Netbeans. Також для цього можна використовувати завдання ant для запуску усіх тестів (але ви не в змозі отримати результати окремих тестів).
Всі модульні тести можуть виконуватись в режимі headless (тобто без графічного дисплею), що дозволяє їм працювати в проектах з безперервною інтеграцією.
Запуск тестів з командного рядка
export TESTCP=".:test/unit:test/functional:dist/josm-custom.jar:test/lib/fest/fest-assert-1.0.jar:test/lib/fest/MRJToolkitStubs-1.0.jar:test/lib/fest/jcip-annotations-1.0.jar:test/lib/fest/fest-swing-1.1.jar:test/lib/fest/fest-reflect-1.1.jar:test/lib/fest/fest-util-1.0.jar:test/lib/fest/debug-1.0.jar:test/lib/junit/junit-4.11.jar:test/lib/jfcunit.jar:test/lib/unitils-core/ognl-2.6.9.jar:test/lib/unitils-core/commons-lang-2.3.jar:test/lib/unitils-core/unitils-core-3.3.jar:test/lib/unitils-core/commons-logging-1.1.jar:test/lib/unitils-core/commons-collections-3.2.jar"
Потім запустіть, наприклад
javac -cp $TESTCP test/unit/org/openstreetmap/josm/data/projection/ProjectionRefTest.java java -cp $TESTCP org.junit.runner.JUnitCore org.openstreetmap.josm.data.projection.ProjectionRefTest