Lombok: Ayuda con el colaborador comenzando en Lombok

Creado en 16 abr. 2018  ·  3Comentarios  ·  Fuente: projectlombok/lombok

Hola, en primer lugar, muchas gracias por hacer soportable el desarrollo de Java. Me gustaría contribuir a lombok (mirando el n. ° 1207), y mi primer objetivo es pagar y hacer que las pruebas pasen. Así que pago y hago lo siguiente:

  • ant -projecthelp
  • ant setupJavaOracle8TestEnvironment - arroja muchos errores:

    • en src/core9

    • build.xml <ivy:compile destdir="build/lombok" source="1.9" target="1.9"> ejecuta aunque solo estoy ejecutando setupJavaOracle8TestEnvironment

  • batalla durante un tiempo y luego procede a instalar JDK9 en la computadora portátil (macbook 2016)
  • después de instalar JDK9, ant setupJavaOracle8TestEnvironment funciona
  • y luego ejecuta ant dist , muchas pruebas fallan
  • y luego, por algún tiempo, trato de configurar en el IDE

Después de pasar un fin de semana configurando un entorno de desarrollo en Lombok, me disculpo, me di por vencido. O estoy haciendo algo muy mal, en cuyo caso me gustaría obtener ayuda de ustedes sobre lo que va mal aquí. O me gustaría comenzar a contribuir en la configuración de un entorno de prueba fácil (actualización de scripts de compilación o documentos) y un CI (¿Travis CI?) Que ejecuta las pruebas en cada RP. ¿Qué piensas? :)

Comentario más útil

@rzwitserloot Debo tener muy claro que no quise "despotricar", de hecho todo lo contrario. Mi prioridad era bastante simple: pagar y ejecutar pruebas , desde la CLI, siguiendo los documentos impresos por ant -projecthelp . Debo decir que abarrotar cosas como cuestionar nuestra elección de buildscript (?) Es desalentador de leer.

@victorwss gracias, intentaré un lanzamiento etiquetado. No sabía que estaba bien que las pruebas fallaran en el maestro y pasé mucho tiempo tratando de que pasaran. Para un proyecto complejo como lombok, no me gustaría comenzar con un escenario de prueba fallido, porque cuando comienzo a cambiar el código, no se sabe si las pruebas fallidas se rompieron antes o después, y me lleva a un buen ". Se compila en problemas de mi máquina. Por lo tanto, intentaré que las pruebas pasen una versión etiquetada y comenzaré a iterar desde allí.

Todos 3 comentarios

Requisito de JDK 9

Deberíamos ser un poco más claros, pero se requiere JDK9 para compilar lombok (¿por qué? Bueno, salvo recurrir a cosas como ecj, no es posible producir un lombok.jar que se ejecute en JDK9 sin compilarlo en JDK9).

SOLUCIÓN: Haz que la hormiga detecte que estás en 8 o menos y salga de inmediato.

configuración de hormigasJavaOracle8TestEnvironment

Saqué un nuevo clon del repositorio, configuré mi entorno mac para usar javac8 y ejecuté esto. Sin errores.

¿Supongo que estás haciendo algo mal? No tengo ni idea; por favor proporcione los errores que obtuvo, no hay mucho que pueda hacer sin esta información.

Por separado, no era necesario que hiciera eso; solo ant eclipse o ant dist , dependiendo de lo que intente hacer, está bien.

muchas pruebas fallan

Bueno, la rama maestra es la rama de desarrollo en vivo. Vuelve a una versión etiquetada si quieres algo estable. La mayoría de las pruebas que fallan son indicativas de que lombok está haciendo algo mal en situaciones bastante exóticas, y las pruebas reflejan esto, pero estas no son, en general, 'pelo en llamas'. Debe arreglar pernoctaciones o cualquier cosa. La gran mayoría de usuarios de lombok no se topará con él. No se preocupe por eso.

Configuración en el IDE

Bueno, funciona para mí. Como dice el refrán, "no funciona" no es un gran informe de error. Se requiere algún detalle o no puedo ayudarlo. Creo que tus prioridades están un poco desordenadas. ¿Quiere contribuir y el primer enfoque es cuestionar nuestras elecciones de scripts de compilación? Es un lío complejo por una muy buena razón: Lombok es el proyecto más complicado que puedas construir. Realmente no es un buen lugar para comenzar a contribuir.

Esto es una bolsa de sorpresas: ha enumerado muchas solicitudes de funciones independientes e informes de errores con muy pocos detalles. Para la proxima vez:

  • Presenta informes de errores como informes buenos y bien documentados: incluye datos relevantes como las versiones de Java, tu sistema operativo y la configuración que hiciste, y los errores que obtienes, y envía solo un problema por elemento.

  • Discuta ideas para contribuir o quejas generales sobre lo fácil o difícil que es "comenzar", por así decirlo, en el foro. El desarrollador de Lombok es menos fácil de ingresar de lo que nos gustaría, pero una gran parte de eso es inherente a la complejidad de lo que lombok está tratando de hacer.

Estoy usando Windows. Probé si podía hacer una nueva compilación de lombok con esto:

  1. git clone https://github.com/rzwitserloot/lombok.git

  2. Establezca las propiedades del proxy si es necesario (ese es mi caso):

    set ANT_OPTS=-Dhttp.proxyHost=myproxyhost -Dhttp.proxyPort=3128 -Dhttp.proxyUser=myproxyusername -Dhttp.proxyPassword=myproxypassword -Dhttps.proxyHost=myproxyhost -Dhttps.proxyPort=3128
    

    Naturalmente, si está detrás de un proxy, deberá configurar el host, el puerto y el usuario de acuerdo con su configuración. Si no está detrás de un proxy, puede omitir este paso.

  3. java -version :

    Esto produce:

    java version "10" 2018-03-20
    Java(TM) SE Runtime Environment 18.3 (build 10+46)
    Java HotSpot(TM) 64-Bit Server VM 18.3 (build 10+46, mixed mode)
    
  4. javac -version :

    Esto genera solo javac 10

  5. ant - Sí, solo ant y nada más. Esto lleva algo de tiempo descargar un montón de dependencias y algo de tiempo para compilar cosas. Pero termina impecable al final, después de 7 minutos y 7 segundos hay lombok.jar y lombok-1.16.21.jar en mi carpeta dist .

Por supuesto, como dijo @rzwitserloot , obtener cosas de master lugar de una rama etiquetada probablemente también tomará algunas cosas no bien probadas con eso. Pero bueno, si tiene los archivos JAR en la carpeta dist , esto significa que acaba de compilarlos. Por lo tanto, puede comenzar a piratear su código para resolver sus funciones y correcciones de errores.

@rzwitserloot Debo tener muy claro que no quise "despotricar", de hecho todo lo contrario. Mi prioridad era bastante simple: pagar y ejecutar pruebas , desde la CLI, siguiendo los documentos impresos por ant -projecthelp . Debo decir que abarrotar cosas como cuestionar nuestra elección de buildscript (?) Es desalentador de leer.

@victorwss gracias, intentaré un lanzamiento etiquetado. No sabía que estaba bien que las pruebas fallaran en el maestro y pasé mucho tiempo tratando de que pasaran. Para un proyecto complejo como lombok, no me gustaría comenzar con un escenario de prueba fallido, porque cuando comienzo a cambiar el código, no se sabe si las pruebas fallidas se rompieron antes o después, y me lleva a un buen ". Se compila en problemas de mi máquina. Por lo tanto, intentaré que las pruebas pasen una versión etiquetada y comenzaré a iterar desde allí.

¿Fue útil esta página
0 / 5 - 0 calificaciones