我有使用Maven制造的Java项目。因此,我有典型的Maven项目布局。我用jython。所以我得到了几个python文件。我在Java类中通过PythonInterpreter使用。
我将Python文件放在SRC/Main/Py文件夹中。我使用此路径将解释器导入模块。它在我的笔记本电脑上正常工作。
问题是:
当我进行MVN安装时,此文件夹不会进入战争。
我阅读了有关Maven Resources插件的信息,并添加了此文件夹作为资源。这样:
<resources>
<resource>
<directory>src/main/py</directory>
</resource>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
i这种情况将文件夹内容添加到Web-Inf/直接,而不是在SRC/MAIN/PY中。因此,该路径无效在战争档案中应用。
问题是:
我应该如何放置此Python资源,以及我应该在pom.xml中写的内容,以便能够在笔记本电脑上使用相同的路径以及服务器?
您可以尝试在资源元素中加入目标路径,如下:
<resource>
<targetPath>../</targetPath>
<directory>src/main/py</directory>
<includes>
<include>**/*.py</include>
</includes>
</resource>
我建议使用src/main/scripts文件夹,并检查他们是否在战争中打包在战争的位置,请检查Maven-War-Plugin的文档并定义它使用文档中所述的战争插件。
<resources>
<resource>
<directory>src/main/py</directory>
</resource>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
实际上足以包括在JAR/WAR文件中。
用于运行
编译Maven中的Python源
不建议在Python脚本中使用src/main/py
,将src/main/py
视为工作/当前文件夹python