Pregunta

Estamos utilizando Maven para un gran proceso de construcción (> 100 módulos). Hemos estado almacenando nuestras dependencias externas de control de código fuente, y utilizarlo para actualizar un repo local.

Sin embargo, estamos listos para pasar a un repo local que se puede almacenar en caché central, de modo que no tenga que descargar de forma proactiva todas las partes 3ª (pero todavía podemos tener un acuerdo de recompra local para tirar de). Además queremos publicar nuestros artefactos de construcción interna de una acumulación de todas las noches para que los desarrolladores no tienen que construir el mundo.

Estamos considerando Nexus y Artifactory. ¿Cuáles son las razones para preferir uno sobre el otro? ¿Hay otras personas que debemos considerar?

¿Fue útil?

Solución

No sé sobre Artifactory pero aquí están mis razones para utilizar Nexus:

  • instalación sencilla Muerto (y desde la versión 1.2, actualización simple muertos, también)
  • Muy buena interfaz de usuario web
  • Fácil de mantener, casi ninguna sobrecarga administrativa
  • Le proporciona fuentes RSS de artefactos, y los errores rotas recientemente instaladas
  • Se pueden agrupar varios repositorios por lo que puede reflejar varias fuentes, pero sólo necesitan una o dos entradas en su settings.xml
  • Implementación de Maven trabaja fuera de la caja (sin necesidad de cortes WebDAV, etc.).
  • está libre
  • Puede redirigir las rutas de acceso (es decir algunos pom.xml roto requiere "A.B.C" de "XXX"). En lugar de un parche en el POM, se puede corregir el error en Nexus y redirigir la solicitud al lugar en el que el artefacto es en realidad.

Otros consejos

Estoy seguro de que si sólo se habla de almacenar programas de "mvn deploy" tanto a hacer bien.

Utilizamos Artifactory muy ampliamente con todas las mejoras a lo largo del camino. Un montón de proyectos, numerosas instantáneas desplegados y repositorios externos proxy. Ni un solo problema. Me resulta difícil explicar cómo otras personas experimentan problemas con su base de datos, indexación o cualquier otra cosa. Nada de eso ha pasado a nosotros. Además, Artifactory permite almacenar datos en un disco y sólo utilizar una base de datos para almacenar los metadatos, es bastante flexible ( ver más aquí ).

Lo que hace que estas aplicaciones muy diferente es su enfoque hacia la integración con otras herramientas y tecnologías de construcción. Nexus y Sonatype son más o menos fijos en Maven y m2eclipse. Ellos ignoran cualquier otra cosa y sólo recientemente comenzó a trabajar en su propia integración patentada Hudson (véase su Maven 3 seminario ). EDIT: Esto no es cierto ya partir de 2017 Nexus da un soporte mucho mayor para otras herramientas de construcción Fin de Editar

Hudson, TeamCity y bambú integración , y Gradle / apoyo Ivy . Así, mientras que Nexus le da nada una vez que paso fuera de Sonatype "zona de confort" (Maven, m2eclipse), Artifactory abraza y colabora con las principales herramientas de construcción.

De hecho, ser capaz de desplegar artefactos construir a partir de Hudson, cuando el trabajo ha terminado, y no por "<=>" es una gran diferencia: Artifactory Hudson plug-in hace un despliegue atómica como de todos los artefactos a la vez , sólo cuando un trabajo de construcción ha finalizado correctamente. "<=>" se ejecuta después de cada módulo y se puede desplegar un conjunto parcial de los artefactos si un trabajo de generación falla en el medio. El despliegue de Maven en la finalización del módulo y no desde un servidor de compilación de la finalización del trabajo es realmente una mala cosa que hacer.

Como se ve, Artifactory piensa "fuera de la caja", mientras que Nexus piensa "dentro de la caja" y sólo se preocupa por Maven y artefactos Maven.

Otra cosa que hace que sea más accesible Artifactory es su Artifactory basado en la nube href="http://www.jfrog.org/art-online.php" línea solución . Por alrededor de $ 80 al mes usted tiene su propia instancia Artifactory, no hay necesidad de dedicar cualquier servidor para ello.

REST API simple y directo , no sé cómo funciona para Nexus. Editar tiene también una API REST que se puede utilizar fácilmente también.

En resumen, para el almacenamiento básico de artefactos Maven Creo que ambos están bien. Pero mientras Nexus para allí ser estrictamente un "administrador de repositorio de Maven", Artifactory sigue y sigue, siendo un "almacenamiento binarios" generales para los binarios de cualquier tipo, de cualquier herramienta de construcción y el servidor CI.

ambos sistema de archivos y almacenamiento de base de datos back-ends. El almacenamiento se basa suma de comprobación y los binarios idénticos se almacenan sólo una vez, no importa cuántas veces en que aparecen en el repositorio, lo que hace que el almacenamiento en cuanto Artifactory más eficiente. Mover y copiar también son muy baratos, porque de esta arquitectura (en Nexus No hay descanso para mover / copiar - usted tiene que mover cosas en el sistema de archivos, a continuación, ejecutar las acciones correctivas en el repositorio para hacerle saber el contenido ha cambiado).

Otro diferenciador importante es Artifactory tiene integración única con Hudson y TeamCity para capturar información acerca de los artefactos desplegados, dependencias resueltas y datos del entorno asociados con carreras de construcción, lo que proporciona una trazabilidad completa de construcción.

Artifactory almacena los artefactos en una base de datos, lo que significa que si algo va mal, todas sus artefactos se han ido. Nexus utiliza un archivo plano para sus artefactos preciosos por lo que no tiene que preocuparse de todos perderse.

Si necesita las características "Pro" de uno u otro (por ejemplo, promoción de estadificación repos artefacto, NuGet), y luego debe tener en cuenta los diferentes modelos de precios, que se muestran en sus sitios web.

En resumen:

  • Artifactory Pro
    • pagas por servidor
    • Puede pagar más por el aumento de las horas de servicio
  • Nexus Pro
    • pagas por asiento , es decir, el número de desarrolladores que se descarguen los artefactos
    • Servicio de apoyo es de lunes a viernes 0800-2000 ET solamente, no importa lo que se paga

No importa cuántos usuarios tenga, Nexus Pro ofrece un servicio de apoyo que es aproximadamente equivalente al de Artifactory $ 7,450 / año "Silver Value Pack".

$ 7,450 / año le comprará aproximadamente el 67 Nexus asientos Pro (1-50 @ $ 108, el resto @ $ 120).

El precio y el apoyo solo, entonces, Nexus Pro tiene sentido hasta llegar a 67 usuarios, y en ese momento se convierte en Artifactory la opción más barata.

Si usted está haciendo todo el apoyo en la empresa; Sin embargo, ese punto mágico es cerca de 23 usuarios (más oferta de soporte básico de Artifactory es $ 2,750 / año).

Hice algunas investigaciones sobre Nuevo hotel Artifactory 2 y Nexus 1.3. Voy a enumerar aquí las principales diferencias que he encontrado:

  • tiendas Artifactory metadatos y archivos opcionalmente en DB, Nexus escribe directamente en el sistema de archivos. Hay pros. y los contras. para cada enfoque. DB admite transacciones, mientras que en los archivos almacenados FS se puede acceder directamente.
  • Artifactory tiene mayores requisitos del sistema, especialmente para el espacio de disco.
  • Artifactory tiene soporte LDAP, mientras que Nexus tiene que sólo en versión de pago. En el complemento LDAP libre otra parte para Nexus está disponible en Google Code.

La comparación más completa: http://binary-repositories-comparison.github.io/

Debe utilizar Artifactory Su última versión fue un verdadero salto Puede copia de seguridad incremental del repositorios, lo que significa que puede tener todos sus artefactos guardar y mantener Su tiene un fácil de usar interfaz de usuario web y es muy fácil de configurar Lo disfrute mucho echa un vistazo a su nueva versión 2.0

Desde el punto de vista de los alumnos que tenga en cuenta algunas diferencias específicas entre los dos.

  1. Sonatype .war despliegue no es compatible con el servidor de aplicaciones JBoss en el momento, a pesar de que se ejecuta bajo Tomcat.
  2. Sonatype no me ofrecen una Amazon Machine Image (AMI), en la actualidad, que podía estar de pie rápidamente y prueba.
  3. Una Artifactory IAM es proporcionada por Bitnami y toma sólo unos minutos a pie y unos minutos más para configurar, tal vez varias decenas de minutos que dependen de lo que estamos tratando de lograr.
  4. Artifactory ofrecen una versión SaaS de Artifactory en la nube para que pueda centrarse en hacer las cosas en lugar de la infraestructura.
  5. No tengo ninguna experiencia con Nexus pero he encontrado Artifactory muy intuitivo y fácil de configurar, al menos al principio.
  6. Agregado - Yo observo que la Guía Artifactory usuario, que puede estar bien para un profesional experimentado, es un poco de luz sobre por alguna de las explicaciones de profundidad. Por ejemplo, empezando, uno se baja la cremallera y luego Addes un repositorio, dicen de RedHat JBoss EAP Empresa Repo. Todo va bien, pero luego, cuando traté de ver los artefactos que se importaron informes Artifactory cero artefactos? No hay errores o advertencias, así que ahora estoy en busca de una explicación. ¿Es esto normal o no normal? Una explicación simple en el mana puede apuntar rápidamente en uno en la dirección correcta. Ser un buen colaborador que estoy añadiendo estos comentarios al proyecto para el beneficio de otros titulares.

Todo política / religión a un lado, la concesión de licencias hace una diferencia para algunas organizaciones.

Nexus es GPL ahora AGPLv3 y ahora Eclipse Public License (EPL) .

Artifactory está Apache licencia LGPLv3 licencia como de la versión 2,1 del producto.

También es posible que desee considerar Archiva , sólo para efectos de comparación. Es Apache 2.0 licencia.

veo que el uso de Nexus está creciendo, mientras que el uso Artifcatory se alojaba generaly plana.

introducir descripción de la imagen aquí

La imagen se toma de aquí http: / /blog.sonatype.com/2014/11/42000-nexus-repository-managers-and-growing/

También hay matriz de comparación de http: // docs .codehaus.org / pantalla / MAVENUSER / Maven repositorio + + + Gestor de funciones + Matriz

Tanto Artifactory y Nexus tienen más o menos similar conjunto de características pero el soporte LDAP de Artifactory hace que sea más atractiva sobre Nexus. Aunque Nexus también tiene soporte LDAP pero en versión de pago: - (

Hmmm ... mi experiencia con Artifactory es horrible ... pero yo soy un novato en relación a fin de tomar con un grano de sal. Mi queja general es que no parecen archivos jar cargados recientemente a Artifactory para la indexación de inmediato - como en por horas - y no parece ser una buena manera de forzarlo. He intentado varias cosas que parecían como si ellos deberían haber funcionado, pero no lo hice. He estado trabajando con m2eclipse, añadiendo dependencias de un proyecto que estoy conversión de hormiga. Cuando intento agregar un frasco que acabo añadido a Artifactory, espero que aparece como una opción en el selector pero no.

un compañero de trabajo me dijo que habían instalado nexo y hasta el momento no les guste ... pero no puedo dar fe de ello todavía. Estoy a punto de instalar que en una máquina Linux tan pronto como me puede encontrar uno.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top