Компилировать исходники Python в Maven - PullRequest
0 голосов
/ 12 октября 2018

У меня есть несколько исходных файлов Python в моем проекте (под src/main/python) вместе с классами java (под src/main/java).Я хотел бы включить эти файлы Python в мою целевую банку maven.Есть ли плагин для этого?

Я могу заметить, что артефакт сборки, созданный IntelliJ, включает файлы python, а созданный maven нет.

1 Ответ

0 голосов
/ 12 октября 2018

Как вы упомянули, ваша текущая структура проекта имеет файлы java в src/java.Это не соответствует стандарту maven.В идеале вы должны следовать стандартной структуре, упростить совместимость как с IDE, так и с maven.

Файлы Java должны храниться в src/main/java, который вы хотите упаковать в jar.

Аналогично,Python - это просто файлы скриптов, а не скомпилированные.Таким образом, вы можете поместить эти файлы в src/main/resources.

src
|---main
|   |---java (Keep your java files here)
|   |---resources
|   \    |---python (You can keep you python files here)
|        \
|---test
|   |---java (Keep your java unit test files here)
|   |---resources (If you have any resources test specific)
|   \

Если это невозможно, вам нужно обновить pom.xml, чтобы src/python считался исходной папкой.См. Этот плагин: плагин сборки помощника

<project>
  ...
  <build>
    <plugins>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>build-helper-maven-plugin</artifactId>
        <version>3.0.0</version>
        <executions>
          <execution>
            <id>add-source</id>
            <phase>generate-sources</phase>
            <goals>
              <goal>add-source</goal>
            </goals>
            <configuration>
              <sources>
                <source>src/python</source>
                ...
              </sources>
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>
</project>
...