2009-02-16 2 views
24

У меня есть два вопроса и некоторый контекст.Подзаголовок с адаптером SVNKit

Я устанавливаю Subclipse 1.4.x в Eclipse Ganymede, и я думаю, что я должен использовать адаптер SVNKit. Я использую Ubuntu 8.04, который поставляется с Subversion 1.4.x, и поскольку для адаптера JavaHL требуется Subversion 1.5.x с использованием чистого Java-решения, такого как SVNKit, кажется хорошим решением.

Какие плюсы и минусы вы видите с помощью адаптера SVNKit?

Я не могу найти документацию о том, что фактически предоставляет библиотека JNA, клиентский адаптер SVNKit и библиотека SVNKit. И мне интересно узнать, что я устанавливаю. Что они предоставляют?

alt text http://i39.tinypic.com/2vboaiu.png

ответ

26

Характеристика-накрест, оба комплекты обеспечивают такое же количество функциональных возможностей. SVNkit был специально разработан с учетом Subclipse, поэтому никаких сюрпризов нет.

Speed-wide, они также похожи. Это не является большим сюрпризом, потому что Subversion обычно связана с I/O (ожидание того, что сервер SVN обрабатывает данные, всегда будет занимать больше времени, чем клиентская библиотека SVN на вашем компьютере).

Subversion 1.5 имеет некоторые значительные улучшения в скорости, но это не относится к вашему делу.

Главное отличие состоит в том, что вам не нужна правильная версия javahl, установленная на вашем компьютере. Для Linux это часто является проблемой, потому что это означает, что вам нужно настроить переменную env LIBRARY_PATH для Eclipse, чтобы можно было правильно загрузить загружаемую библиотеку, и вам, возможно, придется самому скомпилировать библиотеку, если вы не можете найти пакет, который подходит вам необходимо. В вашем случае Ubuntu должен поставляться с предварительно скомпилированной библиотекой, но эта библиотека предназначена для Subversion 1.5. Однако, когда вы подключаетесь к серверу 1.4, оно должно отпадать грациозно.

Ребята из Subclipse поддерживают SVNkit, но у меня были проблемы с ним в прошлом (это было несколько лет назад, я уверен, что это значительно улучшилось с тех пор). Они тоже были исправлены довольно быстро.

Все, что я думаю, вам лучше с SVNkit, так как это проще настроить.

[EDIT] Что касается «Что следует загрузить», я думаю, вам нужно все ниже «SVNKit Adapter (опционально)», то есть все три компонента (см. SVNKit FAQ).

+0

Спасибо за ваш информативный ответ! Вы также знаете, какой из трех компонентов в адаптере SVNKit мне действительно нужен? (Google не был моим другом) –

+0

Хорошо, похоже, JVA - это хорошо, но он лицензирован как LGPL, который не всем нравится пользователям. Лично мне все равно. Знаете ли вы какие-либо несовместимости с обычным родным SVN-клиентом? (Кроме версий несовместимости 1.5 <-> 1.4 и т. Д., Что понятно, что они могут существовать.) –

+0

Кроме того, в моем случае я использую Ubuntu 8.04 (Hardy), а не 8.10 (Intrepid). Версия, которую я использую, поставляется с Subversion 1.4. Я не мог заставить JavaHL работать, поэтому теперь я собираюсь в SVNKit. Я просто надеюсь, что это не вызовет проблем для других разработчиков, использующих собственные SVN-клиенты (я подключаюсь к родному SVN-серверу). –

10

Я всегда рекомендую использовать JavaHL, если это возможно. JavaHL использует те же собственные библиотеки Subversion, что и клиент командной строки, и поэтому вы получаете максимальную совместимость. Конечно, как вы указываете, использование SVNKit, безусловно, проще. У нас есть ФАК, чтобы помочь с получением JavaHL работает, хотя:

http://subclipse.tigris.org/wiki/JavaHL

Что касается библиотеки ЮНА, я считаю, что SVNKit использует его для вещей, которые не могут легко быть сделаны из Java. Например, в Linux, работающем с символическими ссылками и устанавливающем разрешения на файлы.

+0

Вы говорите, что SVNKit некорректно совместим с клиентом SVN командной строки? Когда дело доходит до JavaHL, для него не требуются конкретные версии Subversion? (В моем случае для него не требуется Subversion 1.5.) В последнем вопросе я сейчас сделаю след и ошибку. :-) –

+0

Я использовал эти инструкции (http://tinyurl.com/cv7foj), пытаясь получить Eclipse 3.4 (Ganymede) + Subversion 1.4 + Subclipse 1.4, работающий с использованием адаптера JavaHL, без везения. Я думаю, что это требует Subversion 1.5 и не может использовать 1.4. –

+0

В этом проблема с JavaHL. –

Смежные вопросы