Ich versuche, ein Applet in eine reguläre Java-Anwendung zu konvertieren, mit JNLP zum Ausführen. Wenn es direkt läuft, funktioniert es. Aber wenn ich über JNLP laufe, bekomme ich den Stack-Trace darunter.JNLP kann keine Hauptklasse mit Maven finden
at com.sun.javaws.LaunchDownload.getMainClassName(Unknown Source)
at com.sun.javaws.Launcher.doLaunchApp(Unknown Source)
at com.sun.javaws.Launcher.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Haupt Java-Klasse (App.java)
public static void main(String[] args) throws Exception {
String porta = args[0];
String dados = args[1];
String etiquetaBytes = args[2];
DadosEtiqueta[] dadosEtiqueta = getJsonFormString(dados, DadosEtiqueta[].class);
...
}
JNLP-Datei (config.jnlp) Dies ist, wo das Glas Ausführung konfiguriert ist
<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" codebase="http://172.16.3.5:8080/vendor" href="jnlp/config.jnlp">
<information>
<title>App Title</title>
<vendor>Vendor Name</vendor>
<offline-allowed/>
</information>
<resources>
<j2se version="1.7+"/>
<jar href="dir1/dir2/dir3/app-title.jar" main="true" />
</resources>
<application-desc/>
</jnlp>
Maven Jar Plugin (pom.xml) Dieses Plugin setzt die Hauptklasse.
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>myPackage.App</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
Nach dem Kompilieren im Ordner '/target', Was ist der Inhalt der resultierenden Manifestdatei? –
Jaime
Manifest-Version: 1.0 Archiver-Version: Plexus Archiver Built-By: franco.pan Erstellt-By: Apache Maven 3.3.9 Errichten-Jdk: 1.8.0_144 Main-Klasse: myPackage.App –
Was ist die Exception (nicht nur die ersten Zeilen des Stacktrace), die du bekommen hast? - Befindet sich das Glas in "http: //172.16.3.5: 8080/vendor/dir1/dir2/dir3/app-title.jar"? – Jaime