如何配置JavaDocs生成在指定的项目根目录下?

问题描述 投票:0回答:1

我想将 JavaDocs 生成到项目根目录中的给定目录中,我知道

destinationDir
属性存在,但是考虑到我的
build.gradle
存在于项目根目录内的目录中,我该如何使用它。我在下面提供了一个小图:

/projectRoot
  /lib
    /build/docs/javaDocs <--- JavaDocs here by default
    build.gradle
  /docs <---- Need JavaDocs here 

查看 gradle 中的 JavaDocs 文档,这里。我知道destinationDir 属性存在,所以我尝试像提供的示例一样设置它。这没有产生预期的影响,而是没有生成任何内容,或者它是否超出了我的项目目录?

tasks.withType(Javadoc).configureEach {
    exclude ('com/nest/egg/**')
    options.addStringOption("charset", "utf-8")
    options.addStringOption("docencoding", "utf-8")
    options.addStringOption("encoding", "utf-8")
    destinationDir = reporting.file("docs") // Also tried "/docs", "docs/"
}
java gradle github-pages publish javadoc
1个回答
0
投票

您需要将 Java

File
对象传递给
destinationDir
指定您所需的位置1。所以你可以写:

destinationDir = layout.projectDirectory.dir("..").dir("docs").asFile

这里您使用的是 Gradle 的

ProjectLayout
对象。每个
dir()
调用都会为您提供一个 Gradle
Directory
,因此您必须最终调用
asFile
才能最终获得所需的 Java
File
对象。


1我不确定您调用

reporting.file("docs")
时使用的是什么对象,但
ProjectLayout
对象为您提供了您需要的一切。

© www.soinside.com 2019 - 2024. All rights reserved.