plugin example maven python-2.7 exec-maven-plugin

example - Maven exec plugin-Ejecutando un script en python



exec-maven-plugin example (2)

En Windows, el script no es ejecutable. El ejecutable es el intérprete de python, y el script es un argumento para él, así que ponga <executable>path to your python interpreter</executable> y agregue el script como un <argument> . Espero que lo mismo funcione para cualquier plataforma, pero no soy un experto en Python.

Estoy usando maven en Win 7 para construir una aplicación. Utilizo el complemento exec para invocar un script de Python.

<plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>exec-maven-plugin</artifactId> <version>1.2.1</version> <executions> <execution> <id>create-dir</id> <phase>process-classes</phase> <goals> <goal>exec</goal> </goals> </execution> </executions> <configuration> <executable>src/main/upgrade/create.py</executable> <arguments> <argument>ChangeSet.txt</argument> </arguments> </configuration> </plugin>

Recibo el siguiente error cuando compilo el proyecto.

Embedded error: Cannot run program "pathToScript/create.py" CreateProcess error=193, %1 is not a valid Win32 application

Tengo Python instalado y añadido a la variable% PATH.

¿Cómo lo arreglo para que funcione independientemente de la plataforma del sistema operativo?

.:-EDITAR-:.

CÓDIGO DE TRABAJO SNIPPET

<plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>exec-maven-plugin</artifactId> <executions> <execution> <configuration> <executable>python</executable> <workingDirectory>src/main/upgrade/</workingDirectory> <arguments> <argument>createChangeSet.py</argument> </arguments> </configuration> <id>python-build</id> <phase>prepare-package</phase> <goals> <goal>exec</goal> </goals> </execution> </executions> </plugin>


Solo quería agregar que con la versión más reciente de exec-maven-plugin, la etiqueta de configuración debe colocarse después de que la etiqueta de ejecuciones funcione.

Como en el fragmento de trabajo anterior:

<plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>exec-maven-plugin</artifactId> <executions> <execution> <id>python-build</id> <phase>prepare-package</phase> <goals> <goal>exec</goal> </goals> </execution> </executions> <configuration> <executable>python</executable> <workingDirectory>src/main/upgrade/</workingDirectory> <arguments> <argument>createChangeSet.py</argument> </arguments> </configuration> </plugin>