Я работаю над Spring Batch and Spring Data Flow
. Один из лучших уроков, которые я когда-либо видел: https://codenotfound.com/spring-batch-admin-example.html.
В этом примере я только обновил версию Spring Boot до 2.2.6.RELEASE
, но я запускаю это простое приложение, оно выдает ошибку ниже.
Проблема Jira, созданная здесь: https://jira.spring.io/browse/INFRA-56
java.lang.IllegalArgumentException: Failed to parse ipAddresskubernetes.default.svc
at io.fabric8.kubernetes.client.utils.IpAddressMatcher.parseAddress(IpAddressMatcher.java:95) ~[kubernetes-client-4.0.4.jar:na]
at io.fabric8.kubernetes.client.utils.IpAddressMatcher.matches(IpAddressMatcher.java:57) ~[kubernetes-client-4.0.4.jar:na]
at io.fabric8.kubernetes.client.utils.HttpClientUtils.getProxyUrl(HttpClientUtils.java:192) ~[kubernetes-client-4.0.4.jar:na]
at io.fabric8.kubernetes.client.utils.HttpClientUtils.createHttpClient(HttpClientUtils.java:142) ~[kubernetes-client-4.0.4.jar:na]
at io.fabric8.kubernetes.client.BaseClient.<init>(BaseClient.java:55) ~[kubernetes-client-4.0.4.jar:na]
at io.fabric8.kubernetes.client.BaseClient.<init>(BaseClient.java:47) ~[kubernetes-client-4.0.4.jar:na]
at io.fabric8.kubernetes.client.DefaultKubernetesClient.<init>(DefaultKubernetesClient.java:83) ~[kubernetes-client-4.0.4.jar:na]
at org.springframework.cloud.kubernetes.profile.KubernetesApplicationContextInitializer.lambda$new$0(KubernetesApplicationContextInitializer.java:38) ~[spring-cloud-kubernetes-core-0.3.0.RELEASE.jar:0.3.0.RELEASE]
at org.springframework.cloud.kubernetes.LazilyInstantiate.swapper(LazilyInstantiate.java:41) ~[spring-cloud-kubernetes-core-0.3.0.RELEASE.jar:0.3.0.RELEASE]
at org.springframework.cloud.kubernetes.LazilyInstantiate.lambda$new$0(LazilyInstantiate.java:34) ~[spring-cloud-kubernetes-core-0.3.0.RELEASE.jar:0.3.0.RELEASE]
at org.springframework.cloud.kubernetes.LazilyInstantiate.get(LazilyInstantiate.java:29) ~[spring-cloud-kubernetes-core-0.3.0.RELEASE.jar:0.3.0.RELEASE]
at org.springframework.cloud.kubernetes.profile.KubernetesApplicationContextInitializer.initialize(KubernetesApplicationContextInitializer.java:55) ~[spring-cloud-kubernetes-core-0.3.0.RELEASE.jar:0.3.0.RELEASE]
at org.springframework.boot.SpringApplication.applyInitializers(SpringApplication.java:626) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
at org.springframework.boot.SpringApplication.prepareContext(SpringApplication.java:370) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:314) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
at org.springframework.boot.builder.SpringApplicationBuilder.run(SpringApplicationBuilder.java:140) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
at org.springframework.cloud.bootstrap.BootstrapApplicationListener.bootstrapServiceContext(BootstrapApplicationListener.java:203) [spring-cloud-context-2.1.1.RELEASE.jar:2.1.1.RELEASE]
at org.springframework.cloud.bootstrap.BootstrapApplicationListener.onApplicationEvent(BootstrapApplicationListener.java:114) [spring-cloud-context-2.1.1.RELEASE.jar:2.1.1.RELEASE]
at org.springframework.cloud.bootstrap.BootstrapApplicationListener.onApplicationEvent(BootstrapApplicationListener.java:71) [spring-cloud-context-2.1.1.RELEASE.jar:2.1.1.RELEASE]
at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:172) [spring-context-5.2.5.RELEASE.jar:5.2.5.RELEASE]
at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:165) [spring-context-5.2.5.RELEASE.jar:5.2.5.RELEASE]
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:139) [spring-context-5.2.5.RELEASE.jar:5.2.5.RELEASE]
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:127) [spring-context-5.2.5.RELEASE.jar:5.2.5.RELEASE]
at org.springframework.boot.context.event.EventPublishingRunListener.environmentPrepared(EventPublishingRunListener.java:76) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
at org.springframework.boot.SpringApplicationRunListeners.environmentPrepared(SpringApplicationRunListeners.java:53) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
at org.springframework.boot.SpringApplication.prepareEnvironment(SpringApplication.java:345) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:308) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1226) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1215) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
at com.codenotfound.SpringCloudDataFlowServerApplication.main(SpringCloudDataFlowServerApplication.java:13) [classes/:na]
Caused by: java.net.UnknownHostException: kubernetes.default.svc
at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method) ~[na:1.8.0_151]
at java.net.InetAddress$2.lookupAllHostAddr(Unknown Source) ~[na:1.8.0_151]
at java.net.InetAddress.getAddressesFromNameService(Unknown Source) ~[na:1.8.0_151]
at java.net.InetAddress.getAllByName0(Unknown Source) ~[na:1.8.0_151]
at java.net.InetAddress.getAllByName(Unknown Source) ~[na:1.8.0_151]
at java.net.InetAddress.getAllByName(Unknown Source) ~[na:1.8.0_151]
at java.net.InetAddress.getByName(Unknown Source) ~[na:1.8.0_151]
at io.fabric8.kubernetes.client.utils.IpAddressMatcher.parseAddress(IpAddressMatcher.java:93) ~[kubernetes-client-4.0.4.jar:na]
... 29 common frames omitted
2020-04-17 01:08:43.277 ERROR 10288 --- [ main] o.s.boot.SpringApplication : Application run failed
java.lang.IllegalArgumentException: Failed to parse ipAddresskubernetes.default.svc
at io.fabric8.kubernetes.client.utils.IpAddressMatcher.parseAddress(IpAddressMatcher.java:95) ~[kubernetes-client-4.0.4.jar:na]
at io.fabric8.kubernetes.client.utils.IpAddressMatcher.matches(IpAddressMatcher.java:57) ~[kubernetes-client-4.0.4.jar:na]
at io.fabric8.kubernetes.client.utils.HttpClientUtils.getProxyUrl(HttpClientUtils.java:192) ~[kubernetes-client-4.0.4.jar:na]
at io.fabric8.kubernetes.client.utils.HttpClientUtils.createHttpClient(HttpClientUtils.java:142) ~[kubernetes-client-4.0.4.jar:na]
at io.fabric8.kubernetes.client.BaseClient.<init>(BaseClient.java:55) ~[kubernetes-client-4.0.4.jar:na]
at io.fabric8.kubernetes.client.BaseClient.<init>(BaseClient.java:47) ~[kubernetes-client-4.0.4.jar:na]
at io.fabric8.kubernetes.client.DefaultKubernetesClient.<init>(DefaultKubernetesClient.java:83) ~[kubernetes-client-4.0.4.jar:na]
at org.springframework.cloud.kubernetes.profile.KubernetesApplicationContextInitializer.lambda$new$0(KubernetesApplicationContextInitializer.java:38) ~[spring-cloud-kubernetes-core-0.3.0.RELEASE.jar:0.3.0.RELEASE]
at org.springframework.cloud.kubernetes.LazilyInstantiate.swapper(LazilyInstantiate.java:41) ~[spring-cloud-kubernetes-core-0.3.0.RELEASE.jar:0.3.0.RELEASE]
at org.springframework.cloud.kubernetes.LazilyInstantiate.lambda$new$0(LazilyInstantiate.java:34) ~[spring-cloud-kubernetes-core-0.3.0.RELEASE.jar:0.3.0.RELEASE]
at org.springframework.cloud.kubernetes.LazilyInstantiate.get(LazilyInstantiate.java:29) ~[spring-cloud-kubernetes-core-0.3.0.RELEASE.jar:0.3.0.RELEASE]
at org.springframework.cloud.kubernetes.profile.KubernetesApplicationContextInitializer.initialize(KubernetesApplicationContextInitializer.java:55) ~[spring-cloud-kubernetes-core-0.3.0.RELEASE.jar:0.3.0.RELEASE]
at org.springframework.boot.SpringApplication.applyInitializers(SpringApplication.java:626) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
at org.springframework.boot.SpringApplication.prepareContext(SpringApplication.java:370) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:314) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
at org.springframework.boot.builder.SpringApplicationBuilder.run(SpringApplicationBuilder.java:140) ~[spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
at org.springframework.cloud.bootstrap.BootstrapApplicationListener.bootstrapServiceContext(BootstrapApplicationListener.java:203) ~[spring-cloud-context-2.1.1.RELEASE.jar:2.1.1.RELEASE]
at org.springframework.cloud.bootstrap.BootstrapApplicationListener.onApplicationEvent(BootstrapApplicationListener.java:114) ~[spring-cloud-context-2.1.1.RELEASE.jar:2.1.1.RELEASE]
at org.springframework.cloud.bootstrap.BootstrapApplicationListener.onApplicationEvent(BootstrapApplicationListener.java:71) ~[spring-cloud-context-2.1.1.RELEASE.jar:2.1.1.RELEASE]
at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:172) ~[spring-context-5.2.5.RELEASE.jar:5.2.5.RELEASE]
at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:165) ~[spring-context-5.2.5.RELEASE.jar:5.2.5.RELEASE]
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:139) ~[spring-context-5.2.5.RELEASE.jar:5.2.5.RELEASE]
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:127) ~[spring-context-5.2.5.RELEASE.jar:5.2.5.RELEASE]
at org.springframework.boot.context.event.EventPublishingRunListener.environmentPrepared(EventPublishingRunListener.java:76) ~[spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
at org.springframework.boot.SpringApplicationRunListeners.environmentPrepared(SpringApplicationRunListeners.java:53) ~[spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
at org.springframework.boot.SpringApplication.prepareEnvironment(SpringApplication.java:345) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:308) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1226) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1215) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
at com.codenotfound.SpringCloudDataFlowServerApplication.main(SpringCloudDataFlowServerApplication.java:13) [classes/:na]
Caused by: java.net.UnknownHostException: kubernetes.default.svc
at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method) ~[na:1.8.0_151]
at java.net.InetAddress$2.lookupAllHostAddr(Unknown Source) ~[na:1.8.0_151]
at java.net.InetAddress.getAddressesFromNameService(Unknown Source) ~[na:1.8.0_151]
at java.net.InetAddress.getAllByName0(Unknown Source) ~[na:1.8.0_151]
at java.net.InetAddress.getAllByName(Unknown Source) ~[na:1.8.0_151]
at java.net.InetAddress.getAllByName(Unknown Source) ~[na:1.8.0_151]
at java.net.InetAddress.getByName(Unknown Source) ~[na:1.8.0_151]
at io.fabric8.kubernetes.client.utils.IpAddressMatcher.parseAddress(IpAddressMatcher.java:93) ~[kubernetes-client-4.0.4.jar:na]
... 29 common frames omitted
пом. xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.6.RELEASE</version>
<relativePath /> <!-- lookup parent from repository -->
</parent>
<groupId>com.codenotfound</groupId>
<artifactId>spring-cloud-data-flow-server</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>spring-cloud-data-flow-server</name>
<description>Spring Boot Open API Spec</description>
<properties>
<java.version>1.8</java.version>
<maven-jar-plugin.version>3.1.1</maven-jar-plugin.version>
<spring-cloud-starter-dataflow-server.version>2.1.2.RELEASE</spring-cloud-starter-dataflow-server.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-dataflow-server</artifactId>
<version>${spring-cloud-starter-dataflow-server.version}</version>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
SpringCloudDataFlowServerApplication. java
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.dataflow.server.EnableDataFlowServer;
import org.springframework.cloud.deployer.spi.cloudfoundry.CloudFoundryDeployerAutoConfiguration;
@EnableDataFlowServer
@SpringBootApplication(exclude = { CloudFoundryDeployerAutoConfiguration.class })
public class SpringCloudDataFlowServerApplication {
public static void main(String[] args) {
SpringApplication.run(SpringCloudDataFlowServerApplication.class, args);
}
}