====== Лицензионное соглашение ======
Исходный текст программы распространяется под [[http://opensource.org/licenses/gpl-license.php|лицензией GPL v2]].
Copyright (c) 2005-2008 Eugene Stahov (evgs), http://bombus-im.org
В состав Bombus входят следующие библиотеки:
- [[http://kvmjab.sourceforge.net/|KVMJab]] Copyright (c) 2000,2001 Al Sutton (al@alsutton.com). All rights reserved. ([[http://opensource.org/licenses/bsd-license.php|лицензия BSD]])
- [[http://www.jcraft.com/jzlib/|JZlib]] Copyright (c) 2000,2001,2002,2003 ymnk, JCraft,Inc. All rights reserved. ([[http://opensource.org/licenses/bsd-license.php|лицензия BSD]])
- реализация MD5 и SHA1 из состава [[http://www.ssttr.com/|SSTTR Library]] (лицензии см. в исходных текстах: [[http://svn.xmpp.ru/repos/bombus/trunk/src/com/ssttr/crypto/|com/ssttr/crypto/]])
====== Исходный текст Bombus ======
Исходный текст [[bombus:bombus|Bombus]] доступен через [[wp>Subversion_(software)|Subversion]]:
[[http://svn.xmpp.ru/repos/bombus/trunk]]
или
[[https://svn.xmpp.ru/repos/bombus/trunk]]
**[[bombus:patches|Патчи]]** принимаются по адресу ****
====== Инструменты, используемые для сборки Bombus======
ВНИМАНИЕ!!! Суммарный объём инструментария превышает 200 мегабайт!
* **[[http://subversion.tigris.org|Subversion]]** - система управления версиями. //Версия >= 1.3.1// **([[http://subversion.tigris.org/files/documents/15/44049/Setup-Subversion-1.5.3.msi|svn-1.5.3 MSI Installer for MS Windows]] (7 MB))**
* **[[http://java.sun.com/javase/downloads/index.jsp|J2SE(tm) Development Kit (JDK)]]** - Java-машина + инструменты разработки J2SE. //Версия >= 1.4.2//
* **[[http://java.sun.com/products/sjwtoolkit/|Sun Java Wireless Toolkit (WTK)]]** - инструменты для сборки J2ME приложений и MIDP-эмулятор. //Версия >= 2.2. (Sun Java Wireless Toolkit 2.2 входит в состав NetBeans Mobility Pack 5.5 и выше)//
* **[[http://www.netbeans.org/products/ide/|NetBeans IDE]]** - интегрированная среда разработки. //Версия >= 5.0//
* **[[http://www.netbeans.org/products/mobility/|NetBeans Mobility Pack]]** - модуль среды разработки для поддержки J2ME. //Версия та же, что и у Netbeans.//
* **[[http://proguard.sourceforge.net/downloads.html|Proguard]]** - обфускатор. //Версия >= 3.2//
**ВНИМАНИЕ!** Netbeans Mobility Pack 5.0 содержит старую версию Proguard с серьёзной ошибкой. Без обновления Proguard компиляция release-версии Bombus невозможна. Нормальная сборка гарантируется в версиях Proguard 3.2 и **[[http://bombus-im.org/tools/proguard3.5.zip|Proguard 3.5]]**. При использовании NetBeans Mobility Pack 5.5 обновление Proguard не требуется. Proguard 3.7 из Netbeans Mobility Pack 5.5.1, а также Proguard 4.1 (и может быть другие новые релизы) нельзя использовать из-за кривизны!!
----
Опционально:
* [[http://java.sun.com/javase/downloads/netbeans.html|NetBeans IDE with JDK]] - NetBeans IDE с уже включенным JDK
* [[http://tortoisesvn.net/downloads|TortoiseSVN]] - subversion-надстройка для проводника MS Windows
----
Дополнительные ресурсы:
* [[http://bombus-im.org/tools/]]
* [[http://bombus-im.org/docs/]]
* [[http://netbeans.org/]]
* [[http://proguard.sourceforge.net/]]
* [[http://java.sun.com/]]
* [[http://tortoisesvn.tigris.org/]]
* [[http://subversion.org.ru/]]
* [[http://mindview.net/Books/TIJ4|Bruce Eckel: Thinking in Java, 4th edition]] ([[http://www.mediasense.ru/library/java/thinking_in_java/Content.html/|перевод 2-ой редакции]])
====== FAQ по сборке ======
===== Вопрос 1: Как правильно скачать исходники Bombus? =====
**Ответ 1:** Первое скачивание: svn checkout http://svn.xmpp.ru/repos/bombus/trunk
обновление: svn up
===== Вопрос 2.1: Размер скомпилированного Bombus слишком большой! =====
===== Вопрос 2.2: Дико мигает значок GPRS, телефон попискивает (Siemens)! =====
**Ответ 2:** Bombus собран в отладочной конфигурации **DefaultConfiguration**, содержащей полные символические имена и отладочные версии некоторых функций. Для заливки в телефон предназначены конфигурации **ReleaseJZLIB** и **Release**
===== Вопрос 3: Не могу скомпилировать Release-конфигурацию, выдаётся ошибка =====
Error preverifying class am VERIFIER ERROR am.a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V:
Cannot find class Client/Group;
Bombus\nbproject\build-impl.xml:260: Preverification failed with error code 1
**Ответ 3:** В релиз Netbeans Mobility Pack 7.2 включён **proguard.jar** с ошибкой. Необходимо просто заменить файл **netbeans-5.0/mobility7.2/external/proguard.jar** на **proguard.jar** из **[[http://bombus-im.org/tools/proguard3.5.zip|proguard3.5.zip]]**
===== Вопрос 4: Как в NetBeans сделать кодировку UTF-8 по умолчанию? =====
**Ответ 4:** Tools -- Options -- Advanced Options -- Editing -- Java Sources -- Default Encoding: UTF-8
===== Вопрос 5: У меня NetBeans 5.5.1, укомлектованный Netbeans Mobility Pack 7.3; скомпилированный Bombus шлет десятки статусных сообщений и зависает (SonyEricsson) либо не входит в конференцию (Motorola EZX), либо как-то иначе странно себя ведёт =====
**Ответ 5:** В релиз Mobility Pack 7.3 для Netbeans 5.5.1 включён **proguard.jar** с ошибкой. Необходимо просто заменить файл **netbeans-5.5.1/mobility7.3/external/proguard.jar** на **proguard.jar** из **[[http://bombus-im.org/tools/proguard3.5.zip|proguard3.5.zip]]**
===== Вопрос 6: Как скомпилировать Bombus в NetBeans 6? =====
**Ответ 6:**
* Удалить файл **nbproject/build-impl.xml**
* Изменить файл **build.xml** следующим образом:
Index: build.xml
===================================================================
--- build.xml (revision 1363)
+++ build.xml (working copy)
@@ -118,7 +118,7 @@
-
+
* Открыть полученный проект в Netbeans 6, дождаться автогенерации файла **nbproject/build-impl.xml**, указать WTK и **builin.ks**
====== Отладка Bombus ======
В общем случае, Bombus можно отлаживать при помощи Netbeans и WTK-эмулятора. Но бывают специфичные для телефонов проблемы (обычно это свидетельствует о багах в java машинах), которые можно поймать только на этих устройствах.
===== Motorola =====
Информация для разработчиков под Motorola: http://developer.motorola.com/
Можно получить лог работы Bombus с помощью MidWay 2.8 (выдержка из руководства):
Debug information is provided in MIDway through the "Debug Log" tab. This log is especially useful when a
midlet fails to load and reports an error such as "Application Error". This log may be saved into a text file by
using the "Log->Save Log As..." menu item.
Для получения лога в MidWay нужно в телефоне выполнить **Меню** -> **Параметры** -> **Средства Java** -> **Загрузка Java-приложения**, подсоединить кабель, в MidWay указать порт, перейти на вкладку "Debug Log" и открыть Bombus.
===== Nokia =====
==== Tools and SDKs ====
* [[http://www.forum.nokia.com/tools]]
* [[http://www.forum.nokia.com/main/0,6566,030,00.html]]
==== Series 40 Platform SDKs ====
* [[http://www.forum.nokia.com/main/0,,034-521,00.html]]
==== S60 Platform SDKs for Symbian OS, for C++ ====
* [[http://www.forum.nokia.com/main/0,6566,034-4,00.html]]
===== SonyEricsson =====
Существует SDK, позволяющий производить отладку мидлетов непосредственно на телефоне: http://developer.sonyericsson.com/site/global/docstools/java/p_java.jsp