Не удается запустить приложение COMPS. ClassNotFoundException
Я учу COMPS. До сих пор все работало очень хорошо, но я выполнял только примеры, приведенные в руководстве.
Теперь, когда я хочу запустить собственное тестовое приложение, я не могу заставить его работать. Должно быть, я что-то упускаю, но я не вижу, что я делаю неправильно.
Мое приложение называется App и имеет основной класс App и интерфейс в другом классе с именем AppItf. Когда я пытаюсь запустить его с помощью runcompss:
runcompss -d --classpath = $ PWD / App.jar App
Я получаю следующее сообщение:
Используя расположение по умолчанию для файла проекта: /opt/COMPSs/Runtime/scripts/user/../../configuration/xml/projects/project.xml Использование расположения по умолчанию для файла ресурсов: / opt / COMPSs / Runtime / scripts / user /../../configuration/xml/resources/resources.xml
----------------- Запуск приложения --------------------------
[Загрузчик] - произошла ошибка при загрузке или выполнении приложения. java.lang.reflect. java.lang.reflect.Method.invoke(Method.java:606) на сайте Integratoolkit.loader.ITAppLoader.load(ITAppLoader.java:54) на сайте Integratoolkit.loader.ITAppLoader.main(ITAppLoader.java:84). Причина: java..lang.ClassNotFoundException: AppItf в java.net.URLClassLoader$1.run(URLClassLoader.java:366) в java.net.URLClassLoader$1.run(URLClassLoader.java:355) в java.security.AccessController.doPrivile) на java.net.URLClassLoader.findClass(URLClassLoader.java:354) на java.lang.ClassLoader.loadClass(ClassLoader.java:425) на sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) на java.lang.ClassLoader.loadClass(ClassLoader.java:358) в integratedtoolkit.loader.CustomLoader.loadClass(CustomLoader.java:56) по адресу java.lang.Class.forName0(собственный метод) по адресу java.lang.Class.forName(Class.java:195) по адресу integratedtoolkit.loader.total.ITAppModifier.modify(ITAppModifier.java:46) ... Еще 6
Ошибка при запуске приложения
Может ли кто-нибудь помочь мне понять, что я делаю не так?
Заранее спасибо!
1 ответ
В команде runcompss вы должны указать полное доменное имя класса. Итак, если у этого класса есть пакет, вы должны добавить пакет к имени класса. В настоящее время отсутствует.