Personalmente me gustaría tratar de evitar la comprobación en las dependencias de un proyecto en el repositorio de control de versiones SMC.Típicamente eso sería usando Maven como se sugiere en otra respuesta y desplegando un repositorio Maven interno de la compañía que tiene la ventaja de hacer que este recurso sea local para el equipo de desarrollo y proporcionar una ubicación donde puedan residir los artefactos completados/versionados/liberados de su propio proyecto. .
El problema que veo con los Jars es que el SCM es el primero y más importante, el SCM es para administrar el código fuente y están optimizados para ese propósito. Los artefactos compilados no son código fuente y son binarios, cuando normalmente bifurca o actualiza el binario está haciendo una copia del binario, ya que la mayoría de los SCM no pueden 'diferir' un archivo binario.
Otra consideración es qué hacer si tiene dos proyectos que necesitan dependencias registradas? ¿Revisa los deps por separado en cada proyecto y usa la duplicación? ¿O haces un tercer proyecto que contiene solo las dependencias? Y ahora está administrando manualmente los archivos jar en ese proyecto. ¿Qué pasa si sus dos proyectos requieren dependencias mutuamente incompatibles?
En tercer lugar, ¿cómo gestionas las dependencias entre proyectos (donde uno de tus proyectos depende del otro)? ¿El archivo jar está registrado en el otro? ¿Qué pasa con las versiones y otros controles de cambio? ¿Simplemente tiene que sacar los dos proyectos y exigir que se construyan en estricto orden?
En mi experiencia y opinión, estos problemas suelen ser suficientes en un desarrollo de complejidad moderada para responder la pregunta definitivamente: No, no es aceptable verificar las dependencias de archivos jar. Use un sistema de compilación como Maven o Ant + Ivy (u otra alternativa) que proporcione una forma de externalizar la administración y el almacenamiento de las dependencias desde el sistema de control de código fuente.
No creo que haya ningún problema legal, ya que estoy usando principalmente las bibliotecas de código abierto. ¡sí! Decidí registrar todos los JARS. – Veera