Недавно мне пришлось обновить версию для Springfox fox с 2.9.x до 2.10.0, после этого перестал работать следующий код:
import com.google.common.base.Predicate;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
import java.util.Collections;
import static com.google.common.base.Predicates.or;
import static springfox.documentation.builders.PathSelectors.regex;
@Configuration
@EnableSwagger2
public class SwaggerConfiguration {
private Predicate<String> paths() {
return or(
regex("/unit.*"),
regex("/element.*"),
regex("/resources.*"),
regex("/calculation.*"),
regex("/taxi.*")
);
}
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.any())
.paths(paths())
.build()
.apiInfo(getApiInfo());
}
После обновления я заметил, что аннотация @ EnableSwagger2 изменен на @ EnableSwagger2Web Mvc, после внесения этого изменения я также заметил, что теперь они используют предикаты Java вместо предикатов Google. Этот код больше не компилируется из-за этого или (...) метода, любой, кто сталкивается с этой проблемой, может ли кто-нибудь поделиться, каков новый способ сделать это в более новой версии swaggerfox.