gpt4 book ai didi

maven - 使用 maven-exec-plugin 运行命令行

转载 作者:行者123 更新时间:2023-12-05 00:57:50 25 4
gpt4 key购买 nike

我想使用 maven-exec-plugin 运行命令行 (cmd) 以使用 Pandoc 将 Markdown 文件转换为 PDF 文件。

为此,我执行了以下命令:

pandoc ReadMe.md -o ReadMe.html
pandoc ReadMe.html --latex-engine=xelatex -o ReadMe.pdf

我无法在一个命令中运行它,pandoc 给出了奇怪的错误!但这是另一个问题...

我已经使用网上找到的其他示例将其添加到我的 pom 文件中,但没有成功。
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2.1</version>
<executions>
<execution>
<id>pandoc</id>
<phase>generate-pdf</phase>
<configuration>
<executable>cmd</executable>
<workingDirectory></workingDirectory>
<arguments>
<argument>/C</argument>
<argument>pandoc</argument>
<argument>README.md</argument>
<argument>-o</argument>
<argument>README.html</argument>
</arguments>
</configuration>
<goals>
<goal>exec</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>

我不是专家,感谢您的帮助!

最佳答案

定义的阶段,<phase>generate-pdf</phase> , 不是一个 Maven 阶段,因此 Maven 没有将执行绑定(bind)到它的工作流。

您应该根据需要将其绑定(bind)到标准 Maven 阶段。试试 <phase>package</phase>例如,它将在构建结束时执行。
id插件执行的元素是自由文本,您可以键入所需的 id,它将作为构建输出的一部分出现在插件和目标名称之后的曲括号中,

exec-maven-plugin:1.1:exec (pandoc)phase相反,元素必须匹配一个众所周知的 Maven 阶段,以便将插件/目标执行附加到它。如果阶段不为人所知,那么 Maven 将简单地忽略该插件/目标执行(这也是一种采用的方法,通常使用事实上的标准 none 作为阶段,以禁用继承的插件执行,但这有点我会说这个问题的范围是先进的)。

有关 maven 阶段的更多详细信息,请查看官方文档 here .
有关 Maven 阶段的完整列表,here .

关于maven - 使用 maven-exec-plugin 运行命令行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34051477/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com