frigocat
frigocat

Reputation: 283

Jar not found error while while trying to deploy SCDF Stream

I registered the sink first as follows:

app register --name mysink --type sink --uri file:///Users/swatikaushik/Downloads/kafkaStreamDemo/target/kafkaStreamDemo-0.0.1-SNAPSHOT.jar

Then I created a stream

stream create --definition “:myKafkaTopic > mysink" --name myStreamName --deploy

I got the error

Command failed org.springframework.cloud.dataflow.rest.client.DataFlowClientException: File 
/Users/swatikaushik/Downloads/kafkaStreamDemo/target/kafkaStreamDemo-0.0.1-SNAPSHOT.jar must exist

While the jar exists!!

Upvotes: 0

Views: 600

Answers (3)

gdgd777
gdgd777

Reputation: 21

I'v followed the maven local repository mounting approach, using the docker compose, hope this helps:

Maven:

mvn clean install

Setup your environment variables:

$Env:DATAFLOW_VERSION="2.5.1.RELEASE"
$Env:SKIPPER_VERSION="2.4.1.RELEASE"
$Env:HOST_MOUNT_PATH="C:\Users\yourUserName\.m2"
$Env:DOCKER_MOUNT_PATH="/root/.m2/"

Restart/start the containers:

docker-compose down 
docker-compose up

Register your apps:

app register --type sink--name mysink --uri maven://groupId:artifactId:version

Register Doc

Upvotes: 1

Mue
Mue

Reputation: 191

We just had the same error as described above. We had mounted the folder of the jar files to the skipper.

The solution was, that we had to mount the jars to the data-flow server docker container as well.

Skipper is deploying it, but dataflow server registers it.

Upvotes: 0

Sabby Anandan
Sabby Anandan

Reputation: 5651

File permission is one thing - please double check as advised.

A few other ideas:

1) Run app info sink:mysink. If the JAR is actually available, it should return with a list of Boot/Whitelisted properties of the Application.

2) Run the Jar standalone. Make sure it actually starts via java -jar.....

3) The stream definition appear to include a special character (“:myKafkaTopic > mysink" instead of ":myKafkaTopic > mysink" - notice the character); it would fail in the Shell, but it looks like you were able to deploy it. A full stacktrace would help.

Upvotes: 0

Related Questions