в данный момент я пытаюсь запустить свое первое приложение flink. Я уже протестировал java-файл (KMeans.java) в IDE, и он отлично работает, но я не могу обработать этот java-файл как jar в командной строке.
Сборка была успешно создана с mvn clean package
.
Но если я запускаю свой jar-файл в командной строке flink run -c KMeans name.jar
появляется это сообщение об ошибке:
Программа завершилась со следующим исключением:
org.apache.flink.client.program.ProgramInvocationException:
класс точки входа программы 'KMeans' не найден в файле jar.
в
org.apache.flink.client.program.PackagedProgram.loadMainClass (PackagedProgram.java:617)
в
org.apache.flink.client.program.PackagedProgram. (PackagedProgram.java:199)
в
org.apache.flink.client.cli.CliFrontend.buildProgram (CliFrontend.java:856)
на org.apache.flink.client.cli.CliFrontend.run (CliFrontend.java:206)
в
org.apache.flink.client.cli.CliFrontend.parseParameters (CliFrontend.java:1044)
в
org.apache.flink.client.cli.CliFrontend.lambda $ Основной $ 11 (CliFrontend.java:1120)
в java.security.AccessController.doPrivileged (собственный метод) в
javax.security.auth.Subject.doAs (Subject.java:422) в
org.apache.hadoop.security.UserGroupInformation.doAs (UserGroupInformation.java:1754)
в
org.apache.flink.runtime.security.HadoopSecurityContext.runSecured (HadoopSecurityContext.java:41)
в
org.apache.flink.client.cli.CliFrontend.main (CliFrontend.java:1120)
Вызывается: java.lang.ClassNotFoundException: KMeans в
java.net.URLClassLoader.findClass (URLClassLoader.java:381) в
java.lang.ClassLoader.loadClass (ClassLoader.java:424) в
java.lang.ClassLoader.loadClass (ClassLoader.java:357) в
java.lang.Class.forName0 (собственный метод) в
java.lang.Class.forName (Class.java:348) в
org.apache.flink.client.program.PackagedProgram.loadMainClass (PackagedProgram.java:614)
... еще 10
Итак, я посмотрел сгенерированную целевую папку, и в папке классов есть файл KMeans.class. Так я делаю это неправильно?
Заранее спасибо