Spring Rest Docs ошибка вызова документа / индекса. html - PullRequest
0 голосов
/ 24 января 2020

Когда я звоню localhost: 8080 / index. html Я получаю ошибку 404. Я использую Gradle и kotlin. Вот мой build.gradle.kts:

plugins {
    id("org.springframework.boot") version "2.2.3.RELEASE"
    id("io.spring.dependency-management") version "1.0.8.RELEASE"
    id("org.asciidoctor.convert") version "1.5.9.2"
    kotlin("jvm") version "1.3.61"
    kotlin("plugin.spring") version "1.3.61"

}

version = "0.0.1-SNAPSHOT"
java.sourceCompatibility = JavaVersion.VERSION_1_8

val snippetsDir = file("build/generated-snippets")

repositories {
    mavenCentral()
}

dependencies {
    implementation("org.springframework.boot:spring-boot-starter-web")
    implementation("com.fasterxml.jackson.module:jackson-module-kotlin")
    implementation("org.jetbrains.kotlin:kotlin-reflect")
    implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
    asciidoctor("org.springframework.restdocs:spring-restdocs-asciidoctor")
    testImplementation("org.springframework.boot:spring-boot-starter-test") {
        exclude(group = "org.junit.vintage", module = "junit-vintage-engine")
    }
    testImplementation("org.springframework.restdocs:spring-restdocs-webtestclient")


}

tasks{

    withType<Test> {
        useJUnitPlatform()
    }

    withType<KotlinCompile> {
        kotlinOptions {
            freeCompilerArgs = listOf("-Xjsr305=strict")
            jvmTarget = "1.8"
        }
    }

    test {
        outputs.dir(snippetsDir)
    }

    asciidoctor {
        inputs.dir(snippetsDir)
        dependsOn("test")
    }

    asciidoctor{
        outputDir = file("build/docs")
    }



    bootJar {
        dependsOn("asciidoctor")
        from ("${asciidoctor.get().outputDir}/html5") {
            into("static/docs")
        }

    }
} 

Есть идеи, что я могу делать не так?

Поддерживает ли Spring Rest Docs build.gradle.kts? Из того, что я смотрел в документации, я не нашел ничего говорящего об этом.

1 Ответ

0 голосов
/ 29 января 2020

Spring Boot автоматически обслуживает ресурсы c на /. Он находит эти ресурсы, просматривая папку jar static/ (среди других мест). Вы упаковали документацию в static/docs, что означает, что она будет доступна с /docs/, но вы делаете запрос на /index.html. На запрос /docs/index.html следует ответить с документацией.

...