Proyecto + por desarrollador nbactions.xml?

Estoy tratando de simplificar el process de desarrollo para un equipo de ocho o nueve desarrolladores. Como parte de esto, traslado nuestro proyecto a git y Maven.

Nuestro proyecto utiliza algunos objectives personalizados de Maven para respaldar nuestro flujo de trabajo de git. En NetBeans, que es nuestra plataforma de desarrollo principal, puedo configurar estos objectives personalizados para que se activen a través del submenu "Personalizado" en el menu contextual del proyecto, que es muy amigable e ideal para los investigadores de pregrado que vienen y van en nuestro proyecto.

Había omitido nbactions.xml de .gitignore y, .gitignore , esto significaba que cada vez que un nuevo desarrollador bajaba el código y abría el proyecto Maven con NetBeans, obtenían las acciones personalizadas (que requieren cierta configuration aterradora) de forma gratuita.

Desafortunadamente, cuando los desarrolladores configuran su configuration de ejecución / debugging y ejecutan nuestro proyecto, sus acciones de ejecución / debugging / perfil también se agregan a nbactions.xml, que luego se compromete, y canaliza el flujo de trabajo privado de los demás cuando vuelven a desplegar el código.

¿Hay alguna forma de separar las acciones disponibles en el submenu "Personalizado" (o algún mecanismo similarmente fácil para desencadenar objectives Maven específicos) de las configuraciones de ejecución / debugging de modo que uno pueda ser controlado por la versión mientras que el otro se ignora?

"Insistir en que todos usen routes relativas" no es una gran respuesta para empezar, pero es particularmente inadecuado para nuestros propósitos, donde las personas a menudo tienen que apuntar su directory de trabajo para la VM en diferentes directorys arbitrarios que guardan según su propio esquema .

Después de una buena cantidad de investigación, parece que no hay forma de hacer exactamente lo que quiero. Mira aquí:

http://netbeans.org/bugzilla/show_bug.cgi?id=162764

Sería útil si nbactions.xml y nb-configuration.xml actuaran de la misma manera que un POM padre: si tengo un nbaction.xml en un proyecto principal, entonces todas las acciones se henetworkingan.

Que es básicamente lo que quiero-por-desarrollador acciones personalizadas que "henetworkingan" proyectos de acciones personalizadas. La respuesta:

Probablemente poco práctico …

Y el ticket está establecido Resuelto / WontFix.


Entonces, por el momento, aquí está mi siguiente mejor opción:

NetBeans permite diferentes perfiles de ejecución para los cuales Run / Debug / Profile, así como todas las acciones personalizadas, se pueden definir independientemente. Cada perfil se almacena en un nbactions-XXX.xml separado, donde XXX es el nombre del perfil. Entonces, puedo poner nbactions-*.xml .gitignore en .gitignore , pero hago una exception para nbactions-GroupGlobals.xml .

Esto es less que ideal: usar uno de mis objectives personalizados significa hacer clic derecho en el proyecto, ir al menu de Perfiles, seleccionar el Perfil GroupGlobals, volver a hacer clic con el button derecho en el proyecto, ir a los objectives personalizados, ejecutar mi objective, a la derecha haciendo clic en el proyecto nuevamente, yendo a Perfiles y seleccionando el process pnetworkingeterminado.

Aún así, sospecho que será less aterrador que la línea de command para algunos de mis desarrolladores.

Sin embargo, sigo buscando una mejor solución.

En IntelliJ IDEA puede ejecutar cualquier objective de ant o objective de una list (e incluso asignarle una nota de keyboard). Estoy bastante seguro de que hay algo similar en Netbeans. Entonces, en lugar de utilizar cosas específicas de netbeans, podrías hacerlo como configuraciones ant / maven. Por supuesto, estos objectives no deberían requerir ningún parámetro / ajuste / etc. Puede separar las configuraciones locales en un file separado (incluido por el script principal de la ant o en el entorno settings.xml o OS o lo que sea).