我有一个jenkins global library,我想把它记录下来。我想使用groovydoc。
该库包含类和全局变量
src/<package-name>
vars为类生成文档是没有问题的:
groovydoc -sourcepath src -d doc 'main.pipeline' '*.groovy'但是,如何为var生成文档呢?
发布于 2018-11-09 23:32:20
为了确保在正确的包中报告所有内容,而不必枚举所有包,我使用:
mkdir -p doc/
groovydoc -d doc -private -nomainforscripts -sourcepath src:vars \
$(find src/ vars/ -name \*.groovy -printf '%P\n')这个咒语说服Groovydoc在不需要我繁琐地列出所有包的情况下获得正确的包,这是主要的挑战。
如果您的find没有-printf,请用| cut -d '/' -f 2-替换-printf '%P\n'。效果相同;去掉前导的src/或vars/。
发布于 2019-08-30 23:55:47
Maven解决方案:
<plugin>
<groupId>org.codehaus.gmavenplus</groupId>
<artifactId>gmavenplus-plugin</artifactId>
<version>1.7.1</version>
<executions>
<execution>
<goals>
<goal>addSources</goal>
<goal>addTestSources</goal>
<goal>compile</goal>
<goal>compileTests</goal>
<goal>groovydoc</goal>
</goals>
</execution>
</executions>
<configuration>
<sources>
<source>
<directory>${project.basedir}/vars</directory>
<includes>
<include>**/*.groovy</include>
</includes>
</source>
<source>
<directory>${project.basedir}/src</directory>
<includes>
<include>**/*.groovy</include>
</includes>
</source>
</sources>
<testSources>
<testSource>
<directory>${project.basedir}/test</directory>
<includes>
<include>**/*.groovy</include>
</includes>
</testSource>
</testSources>
<docTitle>Jenkins Shared Libs</docTitle>
<header>${titre}</header>
<footer>${titre}</footer>
<windowTitle>${titre}</windowTitle>
</configuration>
</plugin>发布于 2017-07-07 02:28:34
今天在工作中也遇到了同样的问题,遗憾的是现在不能尝试我的解决方案,但可以尝试使用同时包含src和vars的目录作为sourcepath。然后,您可以在命令中引用src和vars子目录,如下所示:
groovydoc -sourcepath [PATH_TO_YOUR_LIB] -d doc src\ vars\如果这不起作用,请尝试分别引用每个包,如下所示:
groovydoc -sourcepath [PATH_TO_YOUR_LIB] -d doc src\org.foo.some_package src\org.foo.some_other_package vars\或者,或者作为一种解决办法,您可以使用IntelliJ集成开发环境及其"Generate GroovyDoc..."-Tool:
Output directory中包含jenkins管道库名为Input directory (包含src和vars)和任意路径的源路径
https://stackoverflow.com/questions/44823071
复制相似问题