0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Записки программиста

Записки программиста

Одна из первых вещей, которой программисты учатся при погружении в мир Java — установка артефактов из Maven Central. Nexus является очень популярным менеджером репозиториев (repository manager) от компании Sonatype. Он позволяет поднимать такой маленький Maven Central внутри вашей компании. В этой заметке будет рассмотрена установка и настройка Nexus, а также хождение в него из SBT. Но сначала мы, конечно же, разберемся, зачем вообще это может быть кому-то нужно.

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

Вот некоторые юзкейсы, которые приходят на ум:

  • Самое очевидное. У вас есть артефакты, которые хотелось бы шарить между командами и/или проектами, но эти артефакты не хочется выкладывать в открытый доступ;
  • Nexus можно поднять в локальной сети и настроить в качестве прокси для Maven Central. За счет этого не приходится «скачивать интернет», когда, например, в команду приходит новый человек или кто-то меняет компьютер. Все артефакты быстро сливаются из кэша в локалке;
  • Представьте, что у вашего провайдера что-то сломалось и вы сидите без интернета. В этом случае работа не встанет из-за недоступности артефактов, так как в локальной сети есть кэшик;
  • Допустим, что артефакт, от которого вы зависите, по каким-то причинам вдруг исчезнет из публичного репозитория. Ходят слухи, что иногда такое случается. Возможно, это будет не артефакт целиком, а только определенная его версия, неважно. Тогда вы сможете залить закэшированный в вашей файловой системе артефакт в локальный Nexus и продолжать работать, как ни в чем не бывало;
  • Некоторые артефакты бывают не залиты в Maven Central. Например, они могут просто лежать в виде исходников на каком-нибудь BitBucket. Опять таки, возможно, это не весь артефакт, а какая-то его development версия с очень важными для вас изменениями. Не нужно копировать исходники к себе в проект и пересобирать их после каждого clean. Или, затаив дыхание, ждать релиза. Просто соберите артефакт и залейте в Nexus;
  • Есть еще много вариаций на тему предыдущего случая. Например, библиотека может быть заброшена. Еще ее автор может очень долго рассматривать ваш pull request или вовсе отклонить его. Создаем форк, собираем, заливаем в Nexus;
  • Вообще, неплохой идеей является распиливание крупных проектов на маленькие артефакты и хранение их в Nexus. Как минимум, это может существенно ускорить сборку проекта. Кроме того, можно повторно использовать некоторые компоненты в разных системах. При этом может получиться, например, что Android-разработчик фактически пишет кусочек бэкенда, когда он коммитит в проект, который используется как на бэкенде, так и в мобильном приложении;
  • Вы хотите сделать некоторые артефакты общедоступными, но Maven Central по каким-то причинам не подходит. Возможно, ваши артефакты не принимают туда из-за лицензии. Или у вас очень много артефактов, а также большая команда разработчиков, которые, вообще говоря, могут приходить в компанию и уходить из нее. В таких случаях может иметь смысл поднять self hosted менеджер репозиториев;

Как по мне, причин более, чем достаточно, для того, чтобы держать Nexus в любой компании, где пишут под JVM. Даже если он будем пустым. Типа, про запас. Чтобы был, если вдруг понадобится. Ради экономии ресурсов Nexus можно поселить на билд сервер рядом с Jenkins.

Установка и базовая настройка

Все описанные ниже шаги были проверены в Ubuntu Linux 14.04 LTS, но, по идее, будут верны и для других версий Ubuntu, а также мало отличаться для других дистрибутивов Linux.

Готового deb-пакета с Nexus нет, но, к счастью, руками он устанавливается не сложно. На машине должна быть установлена виртуальная машина Java. Не так давно, в заметке, посвященной Cassandra, мы выясняли, как она ставится:

Далее качаем архив с Nexus и распаковываем его в /usr/local:

С этого места — под root’ом:

Заводим нового пользователя и делаем его владельцем распакованных файлов:

Делаем так, чтобы Nexus запускался при старте системы:

Читать еще:  Как синхронизировать синтезатор с компьютером

В файле /etc/init.d/nexus кое-что нужно поправить:

Теперь уже под обычным пользователем:

В браузере открываем http://nexus.example.ru:8081/nexus/ — здесь и далее предполагается, что машина называется nexus.example.ru. Справа вверху жмем Log in, вводим логин admin и пароль admin123. После входа справа вверху открываем Profile, меняем пароль. В Security → Users отключаем всех лишних пользователей, меняем email у админа. Там же можно завести пользователей с нужными правами, это не сложно.

Далее переходим к списку репозиториев:

Список репозиториев в Sonatype Nexus

Создаем новый hosted репозиторий, поля заполняем как-то так:

Создание нового hosted репозитория в Nexus

На этом настройку будем считать завершенной. При желании совсем несложно ограничить доступ к Nexus, воспользовавшись iptables, или поднять рядом Nginx с шифрованием трафика. Но эти вопросы мы ранее уже рассматривали, поэтому перейдем непосредственно к работе с репозиториями.

Сборка артефакта и его заливка вручную

Создаем новый Scala-проект, как мы это уже много раз делали, пишем код в таком стиле:

package me. eax . test

В итоге получим файл target/scala-2.11/test-package_2.11-0.1.jar или вроде того. Заливаем артефакт в Nexus в последний созданный репозиторий через вкладку Artifact Upload. Указываем Group, Artifact, Version.

Заводим еще один проект, в коде пишем:

import me. eax . test . _

object Example extends App {
TestPackage. test ( )
}

В файл build.sbt дописываем:

credentials + = Credentials (
"Sonatype Nexus Repository Manager" , // don’t change!
"nexus.example.ru" ,
"user" ,
"password" )

Собираем, проверяем, что все работает.

Еще есть команды sbt package-doc и sbt package-src . Как можно без труда догадаться, они собирают jar’ники с документацией и исходниками.

Заливать артефакты вручную неудобно и чревато ошибками. Поэтому ниже будет показано, как автоматизировать заливку. Но сначала нам потребуются кое-какие дополнительные знания, которые проще всего получить, рассмотрев работу Nexus в качестве прокси.

Использование Nexus как прокси

Чтобы все артефакты качались через Nexus, создаем файл

/.sbt/repositories такого содержания:

Приведенная выше ссылка не уместилась по ширине, но вы можете скопировать ее в списке репозиториев. Это репозиторий с именем Central.

Можете взять какой-нибудь из своих проектов, посмотреть на его зависимости, удалить пару соответствующих артефактов в каталоге

/.ivy2/cache/ и затем сказать sbt compile . Если все было сделано правильно, вы увидите, что теперь артефакты тянутся через nexus.example.ru.

Автоматическая заливка

Возвращаемся к проекту test-package. Файл build.sbt редактируем как-то так:

publishTo := Some ( "Nexus" at "<длинная ссылка на test-repo>" )

Если вы хотите заливать -SNAPSHOT и релизные версии артефакта в разные репозитории, тут написано, как это настроить.

Все credentials мы уже настроили на шаге про использование Nexus в роли прокси. Поэтому просто говорим sbt publish . Будет залит обычный jar’ник, а также javadoc и sources.

Во втором проекте, который зависит от test-package, изменяем build.sbt:

Обратите внимание, что теперь используется два знака процента, а не один. То есть, при заливке sbt автоматически указал имя артефакта test-package_2.11 , как, собственно, и принято в мире Scala. Проверяем, что все собирается.

Также SBT поддерживает кросс-сборку. То есть, в одном проекте можно собирать артефакт для нескольких версий языка Scala. Например, чтобы артефакт собирался для Scala 2.10 и 2.11, в build.sbt нужно дописать:

Тестирование, сборка и публикация всех версий артефакта:

Бывает так, что нужно использовать немного разные версии библиотек или флаги компилятора в зависимости от версии Scala. Это делается примерно так:

Нужно отметить, что перед sbt publish не лишним будет делать sbt publish-local для «заливки» артефакта в кэш, протестировать, что все ОК, и только потом заливать артефакт в репозиторий.

  • просмотр, а также управление мультимедиа с телефона на ПК;
  • импорт плейлистов с популярных проигрывателей, установленных в ПК, на телефон;
  • воспроизведение плейлистов, видео и музыки во встроенном проигрывателе;
  • просмотр списков файлов и управление ими через телефон;
  • передача сообщений, снимков, контактов и других данных;
  • импорт мультимедиа с мобильного устройства на ПК;
  • копирование мультимедиа с ПК на мобильное устройство;
  • резервное копирование информации с телефона на компьютер;
  • синхронизация плейлистов, контактов, календаря, закладок веб-страниц между устройствами.
Читать еще:  Как отрегулировать звук на колонках с компьютера

Преимущества и недостатки

  • бесплатное распространение;
  • простое управление медиафайлами;
  • быстрая передача данных;
  • редактирование фото с телефона на ПК;
  • автоматическое обновление данных при каждом подключении;
  • возможность резервного копирования/восстановления файлов;
  • большое количество поддерживаемых устройств.
  • не обнаружено.

Аналоги

HTC Sync. Бесплатная программа для синхронизации ноутбуков и настольных компьютеров с мобильными устройствами HTC, которые работают на базе платформ Android и Smart. Она помогает устанавливать сторонние приложения, переносить аудио- , фото- и видеоконтент и мн. др. Содержит все необходимые драйвера.

ActiveSync. Бесплатное приложение, которое дает возможность синхронизировать ПК с разнообразными мобильными устройствами при помощи Wi-Fi, Bluetooth или USB. В нем можно вести свой календарь, создавать задачи, записывать контакты, обмениваться медиафайлами, документами либо почтой между устройствами.

Как пользоваться и установить HTC Sync Manager

Для инсталляции программы следует загрузить установщик и следовать дальнейшим указаниям на экране.

По завершению установки нужно подключить телефон к ПК через USB, после этого откроется менеджер.

Для того чтобы импортировать музыку с телефона на ПК, воспользуйтесь пунктом «Музыка», «Настройки» и функцией «копировать».

Для импорта фото и видео перейдите в раздел «Галерея», «Настройки» и выберите там автоматический импорт фото и видео. После выбора необходимых опций нажмите кнопку «Применить».

Чтобы передать документы, зайдите в раздел «Файлы», «Настройки синхронизации», найдите там параметр «Синхронизация документов». Затем нажмите «Добавить» и выберите необходимую папку.

Чтобы выполнить резервное копирование контактов, перейдите в соответствующий раздел, нажмите «Управление контактами», затем «Импорт и экспорт» и кнопку «Экспортировать в память телефона». После этого укажите учетную запись и примените кнопку «Ок».

HTC Sync Manager послужит отличным менеджером для подключения устройств HTC к компьютеру.

  • Значок в системном трее часто растягивается
  • Минимальные параметры, когда дело доходит до скриншот инструменты

Попробуйте бесплатно скачать Nexus Dock для Windows или Nexus Ultimate для Windows, чтобы оживить свой скучный пользовательский интерфейс Windows. Это обеспечивает более быстрый доступ к любимым и часто используемым приложениям. Пусковая установка служит с гибкими опциями, позволяющими ему закрепить или плавать на экране. Nexus дает что-то другое, чем то, что предлагают другие настольные утилиты и пусковые установки. Лаунчер-это очень полезно для пользователей, которые должны использовать Windows на работе.

Как скачать Nexus, с сэмплами или без

Чтобы без проблем установить Nexus 2 к себе на компьютер, и убедиться, что он корректно работает.

  • Сначала вы скачаете установщик Installer_Nexus_v2.2.0.exe.

Скачать Nexus v2.2.0 сама программа весит 25 МБ

Скачать Nexus Content 2,7 ГБ с Яндекс-Диска (официальный банк сэмплов и пресетов).

Если Вы не хотите скачивать сразу все сэмплы 2,7 ГБ! А просто хотите протестировать инструмент на своем компьютере, то можете скачать урезанную версию Nexus Content 250МБ.

Скачать Nexus Content 250 МБ с Яндекс-Диска (урезанная версия, 20% сэмплов отсутствует).

Другой способ:
Скачать ромплер ReFX Nexus 2.2 с mediaget.

На быстрой скорости , Скачать Nexus v2 финальная версия 32 и 64 bit русская версия , без торрента (размер: 3,2 Gb)

Скачать док-панель Winstep Nexus

Название программы (утилиты):Winstep Nexus
Производитель (автор):Winstep Software Technologies®
Статус:Бесплатно
Категория:Интерфейс
Размер инсталлятора (архива):37.6 Мб
Поддержка ОС:Windows XP,7,8,10
Язык интерфейса:Английский, Русский + ещё 24 языка
Безопасность:Вирусов нет
Похожие программы:RocketDock
Ссылка на инсталлятор/сайт:Скачать/Перейти

Описывать установку не буду — она показана в первой статье. Дал ссылку на скачивание официальной и самой актуальной версии программы Winstep Nexus.

Для закрепления материала или если остались вопросы — смотрим видео…

Образец для подражания

Телефон очень быстро завоевал сердца сторонников Android и энтузиастов во всем мире. Ему уже посвящены многочисленные форумы, для него доступны альтернативные прошивки. Разумеется, число искушенных пользователей оказалось сравнительно небольшим по отношению к масштабам массового рынка – по появившейся в Сети статистике, за первый месяц было продано не более 100 тыс. телефонов, что весьма скромно для флагманской модели. На такой результат повлияло много факторов: практически полное отсутствие прямой рекламы телефона, недоступность его в обычных магазинах (можно заказать лишь на сайте Google), ограниченное количество стран, из которых пока принимаются заказы (США, Англия, Гонконг, Сингапур).

Читать еще:  Синхронизация айфона с компьютером яндекс диск

Но, по всей видимости, тактика Google в отношении линейки Nexus не предусматривает гонки за рекордами скорости продаж. Зато она прекрасно соответствует общей стратегии продвижения продуктов этой марки. В процессе раскрутки поискового сервиса Google деньги вкладывались не в рекламу, а непосредственно в поисковый механизм, и это привело компанию на позицию № 1 в мире. Сегодня же Google показательно дарит Nexus One известным блогерам, авторам популярных роликов на YouTube, участникам конференции TED (Technology Entertainment Design), собирающей влиятельных людей со всего мира. Не исключено, что уже очень скоро это приведет к взрыву спроса на очередные продукты линейки Nexus.

Google официально заявила, что Nexus One – флагман, первая модель из целой серии смартфонов данной марки. В Сети уже ходят фотографии будущего Nexus Two, более ориентированного на бизнес-аудиторию. По слухам, его производителем станет теперь Motorola.

На данный момент Nexus One – самый совершенный из всех смартфонов на базе Android и фактически уже воспринимается как эталон продукта топ-класса в этом сегменте. Уже скоро он появится еще в одной ипостаси – HTC Desire, являющегося практически полным аналогом Nexus One, но оснащенного фирменным интерфейсом HTC Sense, а самое главное – будет распространяться по обычным для HTC каналам сбыта, что предполагает обширную географию и больший акцент на традиционную розницу. В итоге продукт будет более массовым не только по доступности, но и концептуально: Sense в принципе позволяет полноценно пользоваться смартфоном без установки дополнительных программ. На подходе и схожие аппараты от Acer и Sony Ericsson.

Повлияет ли телефон под маркой Google на рынок Android-смартфонов? Сам по себе он, пожалуй, не изменит баланс сил среди производителей и платформ, так как является не воплощением новой концепции, а скорее образцом реализации уже существующих функций. Но достичь его уровня будут стремиться и другие игроки сегмента Android, и в этом заключается непосредственное воздействие первого смартфона от Google на рынок. В Украине этот смартфон официально недоступен, и вряд ли ситуация изменится в ближайшее время. Но это не останавливает энтузиастов, которые, несмотря на высокую цену и отсутствие гарантийной поддержки, готовы его приобрести. Тем же, кто хочет иметь официальный телефон, стоит подождать HTC Desire.

Впечатления

Перед нами самая минимальная версия Android. Так как мы устанавливали версию GApps pico, то из Google-сервисов доступен только Play Store.

Работает даже визуально быстро: меню и рабочие столы листаются без задержек, приложения запускаются с минимальными задержками.

Работа с привычными приложениями (YouTube, Evernote, FBReader, Яндекс.Радио) не вызывает дискомфорта. Планшет при его скромных характеристиках работает очень достойно (насколько это возможно с 1 ГБ ОЗУ) и легко может получить вторую жизнь в качестве автомобильного планшета, читалки, пульта управления умным домом, а может быть даже и основного устройства для нетребовательного пользователя.

Nexus 7 по праву можно назвать народным устройством. На него можно поставить практически любую сборку Android, многие популярные дистрибутивы Linux и даже экзотику вроде Sailfish. Его очень легко разобрать, а комплектующие до сих пор можно найти на AliExpress. Хотя он вышел 6 лет назад, до сих пор вокруг него довольно активное сообщество, а энтузиасты регулярно обновляют дистрибутивы. У меня есть iPad mini первого поколения, который, являясь ровесником Nexus 7, выглядит не так бодро, а перспективы что-то с ним сделать практически равны нулю. Очень жаль что Google перестал развивать эту линейку.

голоса
Рейтинг статьи
Ссылка на основную публикацию
Adblock
detector