Pregunta

El problema: tiene una distribución del proyecto Java con cremallera, que depende de varias bibliotecas como Spring-Core, Spring-Context, Jacskon, Testng y SLF4J. La tarea es hacer que la cosa sea construible fuera de línea. Está bien crear el repositorio local de protección de proyectos con todos los frascos de biblioteca requeridos.

He tratado de hacer eso. Parece que incluso cuando el proyecto contiene los frascos que requiere para Javac y el tiempo de ejecución, la compilación aún requeriría acceso a Internet. Maven aún acecharía en la red para obtener la mayoría de sus propios complementos que requiere para la compilación. Supongo que Maven se ejecuta con el directorio .m2 vacío (ya que este puede ser el primer lanzamiento de la compilación, que puede ser una construcción fuera de línea). No, no estoy de acuerdo con distribuir una instantánea de repositorio de Maven completa a lo largo del proyecto en sí, ya que esto me parece un desastre total.

Un poco de retroceso: la tarea más amplia es crear una distribución de ideas JDK/IntelliJ de estilo portátil de Windows que avanza en el proyecto y permite una codificación/ejecución mínima de Java dentro de IDE con una configuración mínima y un acceso mínimo a Internet. El proyecto está dirigido a los estudiantes en una clase de computación, con poco o ningún control sobre la configuración del sistema. Es deseable mantener intacto el sistema de compilación de consola para el modo fuera de línea, pero supongo que Maven depende demasiado de la red, por lo que tengo que deshacerme de él a favor de la buena antigua hormiga.

Entonces, ¿cuál es su opinión? ¿Podríamos mover la primera construcción de Maven en modo fuera de línea por completo? Mi intestino es que la distribución inicial de Maven solo contiene el mínimo mínimo requerido para extraer complementos esenciales del repositorio principal y no es completamente funcional sin ver el repositorio principal al menos una vez.

No hay solución correcta

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