gpt4 book ai didi

Maven 的 Scaladoc 选项

转载 作者:行者123 更新时间:2023-12-03 02:13:40 25 4
gpt4 key购买 nike

我正在寻求有关 Maven 的 scala-maven-plugin 的帮助。我想生成我的 Scaladoc,但我遇到了一些问题。

我实际上可以输入以下命令来创建我的 Scaladoc:

mvn scala:doc

现在的问题是我想在生成 Scaladoc 时添加一些选项,例如 -no-link-warnings

有人知道该怎么做吗?我找到了一种方法(下面的代码有效),但我认为这不是我应该做的。

我的pom文件是:

<build>
...
<plugins>
<plugin>
<!-- see http://davidb.github.com/scala-maven-plugin -->
<groupId>net.alchim31.maven</groupId>
<artifactId>scala-maven-plugin</artifactId>
<version>3.2.1</version>
<configuration>
<args>
<arg>-no-link-warnings</arg>
</args>
</configuration>
<executions>
<execution>
<id>Compile</id>
<goals>
<goal>compile</goal>
<goal>testCompile</goal>
</goals>
<configuration>
<args>
<arg>-dependencyfile</arg>
<arg>${project.build.directory}/.scala_dependencies</arg>
</args>
</configuration>
</execution>
</executions>
</plugin>
...
</plugins>
<小时/>

编辑

用户 Tunaki 在第一个回复中建议了更好的方法,您可以在那里看到代码。

最佳答案

你的配置是完全正确的,尽管你可以写得有点不同。目前(忘记编译源代码的部分),您拥有:

<plugin>
<groupId>net.alchim31.maven</groupId>
<artifactId>scala-maven-plugin</artifactId>
<version>3.2.1</version>
<configuration>
<args>
<arg>-no-link-warnings</arg>
</args>
</configuration>
</plugin>

通过这样的配置,您可以声明 scala-maven-plugin 的每次执行都将具有附加参数 -no-link-warnings。这是因为您是在全局配置元素内声明它。您可以拥有特定于插件执行的配置,与编译部分的配置完全相同:

<execution>
<id>Compile</id>
<goals>
<goal>compile</goal>
<goal>testCompile</goal>
</goals>
<configuration>
<args>
<arg>-dependencyfile</arg>
<arg>${project.build.directory}/.scala_dependencies</arg>
</args>
</configuration>
</execution>

只有在调用执行Compile时才会考虑此配置。

<小时/>

因此,最好将配置更改为特定于插件的执行,因为参数 -no-link-warnings 实际上特定于生成 Scaladoc。

这将是最终的插件声明:

<plugin>
<groupId>net.alchim31.maven</groupId>
<artifactId>scala-maven-plugin</artifactId>
<version>3.2.1</version>
<executions>
<execution>
<id>Scaladoc</id>
<goals>
<goal>doc</goal>
</goals>
<phase>prepare-package</phase>
<configuration>
<args>
<arg>-no-link-warnings</arg>
</args>
</configuration>
</execution>
<execution>
<id>Compile</id>
<goals>
<goal>compile</goal>
<goal>testCompile</goal>
</goals>
<configuration>
<args>
<arg>-dependencyfile</arg>
<arg>${project.build.directory}/.scala_dependencies</arg>
</args>
</configuration>
</execution>
</executions>
</plugin>

然后,例如,当您使用 mvn package 打包项目时,Scaladoc 将使用正确的参数自动生成。

关于Maven 的 Scaladoc 选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34693545/

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