我如何从Maven运行python代码,而python可能在路径中,也可能不在路径中

我如何从Maven运行python代码,而python可能在路径中,也可能不在路径中,python,maven,Python,Maven,我想从Maven模块中运行一些Python单元测试。我有一个exec插件的设置,但我遇到了一个障碍。如果Python不在路径中,则此操作失败。理想情况下,我想要一种修改运行时路径并向其添加已知良好提示的方法,但是在运行时路径中找到它 这是我的exec插件设置 <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>exec-maven-plugin</artifact

我想从Maven模块中运行一些Python单元测试。我有一个exec插件的设置,但我遇到了一个障碍。如果Python不在路径中,则此操作失败。理想情况下,我想要一种修改运行时路径并向其添加已知良好提示的方法,但是在运行时路径中找到它

这是我的exec插件设置

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>exec-maven-plugin</artifactId>
    <executions>
        <execution>
            <configuration>
                <executable>python</executable>
                <workingDirectory>src/main/config/bus/pythonlib</workingDirectory>
                <arguments>
                  <argument>run_all_tests.py</argument>
                </arguments>
            </configuration>
            <id>python-test</id>
            <phase>test</phase>
            <goals>
                <goal>exec</goal>
            </goals>
        </execution>
    </executions>
</plugin>

org.codehaus.mojo
execmaven插件
python
src/main/config/bus/pythonlib
运行所有测试.py
python测试
测试
执行官

Maven有没有更好的方法?有没有办法用变量替换python可执行文件或修改路径?

到目前为止,我想到的唯一方法是在工作目录中创建一个python.bat文件,在运行路径之前向路径添加提示。如果python在路径中,它将找到它并执行它,否则它将找到bat脚本,然后使用修改后的路径进行尝试

一个黑客,但它的工作,你把提示在一个PYTHON_提示环境变量

@echo off
rem Work around for developers whose setup does not have python in their path.
setlocal
set PATH=%PATH%;%PYTHON_HINTS%
python.exe %1 %2 %3 %4 %5 %6 %7 %8 %9