error al ejecutar un jar: "sin atributo de manifiesto principal"

usuario3656083

Quiero usar este programa Java . Extraje el zip y cambié en el directorio e hice el jar ejecutable. Luego ejecuto el siguiente comando

java -Xmx512m -classpath lib/controlP5.jar;lib/core.jar;lib/toxiclibs_p5.jar;lib/toxiclibscore.jar;lib/SolarSystemTravel.jar com.strobe.orbit.SolarSystemTransport

(encontrado en SolarSystemTravel.b__)

Pero no funciona. Estoy usando Linux Mint MATE 20.2 y

openjdk version "17.0.2" 2022-01-18
OpenJDK Runtime Environment (build 17.0.2+8-Ubuntu-120.04)
OpenJDK 64-Bit Server VM (build 17.0.2+8-Ubuntu-120.04, mixed mode, sharing)

el error es

Verwendung: java [Optionen] <mainclass> [args...]
           (zur Ausführung einer Klasse)
   oder  java [Optionen] -jar <jarfile> [args...]
           (zur Ausführung einer JAR-Datei)
   oder  java [Optionen] -m <module>[/<mainclass>] [args...]
       java [Optionen] --module <module>[/<mainclass>] [args...]
            (zur Ausführung der Hauptklasse in einem Modul)

 Argumente, die auf die Hauptklasse folgen, -jar <jarfile>, -m oder --module
 <module>/<mainclass> werden als Argumente für die Hauptklasse übergeben.

 wobei "Optionen" Folgendes umfasst:

    -zero     zur Auswahl der "zero" VM
    -dcevm    zur Auswahl der "dcevm" VM
    -cp <Klassensuchpfad mit Verzeichnissen und ZIP-/JAR-Dateien>
    -classpath <Klassensuchpfad mit Verzeichnissen und ZIP-/JAR-Dateien>
    --class-path <Klassensuchpfad mit Verzeichnissen und ZIP-/JAR-Dateien>
                  Eine durch : getrennte Liste mit Verzeichnissen, JAR-Archiven
                  und ZIP-Archiven, in denen nach Klassendateien gesucht wird.
    -p <Modulpfad>
    --module-path <Modulpfad>...
                  Eine durch : getrennte Liste mit Verzeichnissen, von denen jedes Verzeichnis
                  ein Verzeichnis mit Modulen ist.
    --upgrade-module-path <Modulpfad>...
                  Eine durch : getrennte Liste mit Verzeichnissen, von denen jedes Verzeichnis
                  ein Verzeichnis mit Modulen ist, die upgradefähige
                  Module im Laufzeitimage ersetzen
    --add-modules <Modulname>[,<Modulname>...]
                  Root-Module, die zusätzlich zum anfänglichen Modul aufgelöst werden sollen.
                  <Modulname> kann auch wie folgt lauten: ALL-DEFAULT, ALL-SYSTEM,
                  ALL-MODULE-PATH.
    --list-modules
                  Listet beobachtbare Module auf und beendet den Vorgang
    -d <Modulname>
    --describe-module <Modulname>
                  Beschreibt ein Modul und beendet den Vorgang
    --dry-run     Erstellt eine VM und lädt die Hauptklasse, führt aber nicht die Hauptmethode aus.
                  Die Option "--dry-run" kann nützlich sein, um die
                  Befehlszeilenoptionen, wie die Modulsystemkonfiguration, zu validieren.
    --validate-modules
                  Validiert alle Module und beendet den Vorgang
                  Die Option "--validate-modules" kann nützlich sein, um
                  Konflikte und andere Fehler mit Modulen auf dem Modulpfad zu ermitteln.
    -D<Name>=<Wert>
                  Legt eine Systemeigenschaft fest
    -verbose:[class|module|gc|jni]
                  Ausgabe im Verbose-Modus aktivieren
    -version      Gibt die Produktversion an den Fehlerstream aus und beendet den Vorgang
    --version      Gibt die Produktversion an den Outputstream aus und beendet den Vorgang
    -showversion  Gibt die Produktversion an den Fehlerstream aus und setzt den Vorgang fort
    --show-version
                  Gibt die Produktversion an den Outputstream aus und setzt den Vorgang fort
    --show-module-resolution
                  Zeigt die Modulauflösungsausgabe beim Start an
    -? -h -help
                  Gibt diese Hilfemeldung an den Fehlerstream aus
    --help        Gibt diese Hilfemeldung an den Outputstream aus
    -X            Gibt Hilfe zu zusätzlichen Optionen an den Fehlerstream aus
    --help-extra  Gibt Hilfe zu zusätzlichen Optionen an den Outputstream aus
    -ea[:<packagename>...|:<classname>]
    -enableassertions[:<packagename>...|:<classname>]
                  Aktiviert Assertions mit angegebener Granularität
    -da[:<packagename>...|:<classname>]
    -disableassertions[:<packagename>...|:<classname>]
                  Deaktiviert Assertions mit angegebener Granularität
    -esa | -enablesystemassertions
                  Aktiviert System-Assertions
    -dsa | -disablesystemassertions
                  Deaktiviert System-Assertions
    -agentlib:<libname>[=<options>]
                  Lädt die native Agent Library <libname>. Beispiel: -agentlib:jdwp
                  siehe auch -agentlib:jdwp=help
    -agentpath:<pathname>[=<options>]
                  Lädt die native Agent Library mit dem vollständigen Pfadnamen
    -javaagent:<jarpath>[=<options>]
                  Lädt den Java-Programmiersprachen-Agent, siehe java.lang.instrument
    -splash:<imagepath>
                  Zeigt den Startbildschirm mit einem angegebenen Bild an
                  Skalierte HiDPI-Bilder werden automatisch unterstützt und verwendet,
                  falls verfügbar. Der nicht skalierte Bilddateiname (Beispiel: image.ext)
                  muss immer als Argument an die Option "-splash" übergeben werden.
                  Das am besten geeignete angegebene skalierte Bild wird
                  automatisch ausgewählt.
                  Weitere Informationen finden Sie in der Dokumentation zur SplashScreen-API
    @argument files
                  Eine oder mehrere Argumentdateien mit Optionen
    -disable-@files
                  Verhindert die weitere Erweiterung von Argumentdateien
Um ein Argument für eine lange Option anzugeben, können Sie --<Name>=<Wert> oder
--<Name> <Wert> verwenden.

kein Hauptmanifestattribut, in /home/me/Schreibtisch/sim/istage1_zusatzmaterial_java-programm/lib/core.jar
kein Hauptmanifestattribut, in /home/me/Schreibtisch/sim/istage1_zusatzmaterial_java-programm/lib/toxiclibs_p5.jar
kein Hauptmanifestattribut, in /home/me/Schreibtisch/sim/istage1_zusatzmaterial_java-programm/lib/toxiclibscore.jar
kein Hauptmanifestattribut, in /home/me/Schreibtisch/sim/istage1_zusatzmaterial_java-programm/lib/SolarSystemTravel.jar

¿Puedo resolver este problema o solo el programador puede solucionar el problema?

Silvio Mayolo

El separador classpath es solo ;(punto y coma) en Windows. Como está en Linux, debe usar :(dos puntos) para separar las entradas de classpath. Su shell está interpretando el punto y coma como algo totalmente ajeno y confuso de Java.

Simplemente reemplace todos los puntos y comas con dos puntos en el comando que está invocando.

Este artículo se recopila de Internet, indique la fuente cuando se vuelva a imprimir.

En caso de infracción, por favor [email protected] Eliminar

Editado en
0

Déjame decir algunas palabras

0Comentarios
Iniciar sesiónRevisión de participación posterior

Artículos relacionados

"sin atributo de manifiesto principal" al intentar ejecutar fat jar

Error al ejecutar el archivo jar desde la línea de comando: "sin atributo de manifiesto principal"

Maven: sin atributo de manifiesto principal, en target / xx.jar, no se puede ejecutar el archivo jar

Error de Heroku: sin atributo de manifiesto principal, en el archivo JAR para la aplicación de arranque de primavera

"Sin atributo de manifiesto principal" en ----. Jar Netbeans

Jar de Java: sin atributo de manifiesto principal

JMH sin atributo de manifiesto principal

JMH sin atributo de manifiesto principal

JMH sin atributo de manifiesto principal

Error al crear un bean al ejecutar el archivo .JAR

Implementar el archivo .war en el contenedor de Docker: sin atributo de manifiesto principal en app.war

Error de clase no encontrada al ejecutar un archivo jar simple

error al intentar ejecutar un archivo jar java modular

JENA TurtleParseException error al ejecutar JAR

Error al ejecutar Yarn Jar MRAppMaster NoSuchMethodERror

Error al ejecutar .jar en una Mac

Obteniendo un error al ejecutar Material Ui

obteniendo un error al ejecutar npm

Error al ejecutar un comando en golang

Error al ejecutar un script de Python

Error al intentar ejecutar Jar ejecutable en cmd

InvalidInputException al ejecutar un jar exportado desde Eclipse

InvalidInputException al ejecutar un jar exportado desde Eclipse

Error al analizar datos JSON al ejecutar un script PHP

.jar creado a partir del complemento de sombra maven arroja un error al acceder a los recursos en src / main / resources, pero ¿funciona ejecutar main desde .jar explotado?

Obteniendo un error al ejecutar un script Python personalizado

Obteniendo un error al ejecutar un script Python personalizado

Se encontró un error al ejecutar un archivo cgo simple

Se encontró un error al ejecutar un archivo cgo simple

TOP Lista

CalienteEtiquetas

Archivo