я попытался запустить мой javaprojekt черезбанка не будет выполнена
java -jar myproject.jar
и получил:
Failed to load Main-Class manifest attribute from myproject.jar
Как это может быть? Я получил мою банку довольно много из коробки, используя Netbeans
Ok, я нашел то, что выглядит, как будто это может быть файл манифеста, так вот она:
Manifest-Version: 1.0
Archiver-Version: Plexus Archiver
Created-By: Apache Maven
Built-By: someone
Build-Jdk: 1.7.0_25
Хорошо, так вот класс:
public class Starter {
private static Control c;
/**
*
* @param
*/
public static void main(String [ ] args) {
Control c = new Control();
}
public static Control getC() {
return c;
}
}
бы ни был, даже не обращая внимания на банку, если я пытаюсь
java -cp myproject.jar control.Starter
Я получаю classNotFoundExc eption
Однако, работаю нормально, когда я начинаю изнутри Netbeans.
Хорошо, видимо, у меня был класс по умолчанию с основным в нем, когда я впервые создал проект. Я только сейчас удалил этот класс и снова очистил и построил.
Это означает, что мой манифест теперь выглядит так:
Manifest-Version: 1.0
Archiver-Version: Plexus Archiver
Created-By: Apache Maven
Built-By: someone
Build-Jdk: 1.7.0_25
Main-Class: default.Starter
С одной стороны, мне интересно, как это случилось потому, что Starter явно контролирует пакет, а не в пакете по умолчанию.
С другой стороны, я все еще получаю:
Failed to load Main-Class manifest attribute from myproject.jar
Может кто-нибудь мне помочь?
Ну, если я пытаюсь скомпилировать с Java -cp и так далее я получаю исключение:
Exception in thread "main" java.lang.UnsupportedClassVersionError: control/Starter : Unsupported major.minor version 51.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:634)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:277)
at java.net.URLClassLoader.access$000(URLClassLoader.java:73)
at java.net.URLClassLoader$1.run(URLClassLoader.java:212)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: control.Starter. Program will exit.
Может кто-нибудь ответить мне только это, пожалуйста:
Является ли это, как правило, ошибка в проекта или еще где-нибудь еще? Смысл, если я попытаюсь построить тот же проект на другом компьютере с предположительно правильными путями, у меня будут лучшие шансы на успех? Возможно ли, что мне удалось написать код, который нельзя сделать исполняемым банком?
Предоставьте файл манифеста и пакет файла загрузочного класса, и мы можем сообщить вам, было ли оно настроено правильно. Кроме того, перед сборкой баннера убедитесь, что в конце файла манифеста была пустая строка. – Obicere
Что такое файл манифеста? На самом деле я думал, что IDE должна была убедиться, что не нужно думать о таких вещах. – newnewbie
файл манифеста есть, я думаю. Что такое загрузочный класс? О, да, есть пустая строка. – newnewbie