Kann dies Java?

Status
Nicht offen für weitere Antworten.
D

dR.LoL

Gast
Hallo zusammen,
Ich habe neu begonnen mich in Java zu versetzten mittels Eclipse.
Habe bereits OOP Erfahrungen mit C# gemacht.
Jetzt habe ich ein Kleines Tool geschrieben (Snake :]><), welche sich ausführen und zocken lässt.
Weshalb ich Java lernen möchte ist, weil es sehr Plattform unabhängig ist, was bei C#.Net weniger der Fall war.

Doch jetzt meine Frage, kann Java aus mehreren Klassenfiles, eine Art *.exe oder sowas in der Art erstellen?
Wenn ja, wie gehe ich das Problem an?

Danke und Gruss
vom LoL :D
 

Oni

Top Contributor
hi,

du kannst mit java ausführbare *.jar dateien erstellen. ist sowas wie ein *.zip und das lässt sich auch mit z.B doppelklick starten.

such einfach mal hier im forum nach jar, da wirst du viel finden.
 

bummerland

Top Contributor
wenn du eine exe machst, hast du ja keine plattformunabhängigkeit mehr, auf die es dir ja ankommt.
du kannst ein jar-archiv erstellen, das ist wohl das, was du suchst.
 
D

dR.LoL

Gast
WoW, rasche und gute Antworten, muss mir diesen ForumLink mal merken :]><

Ok, suche mal danach, danke euch!
 
D

dR.LoL

Gast
Rehi,
Also ich habe nun mittels Eclipse (Rechtsklick auf Packet 'Trial' => Built fat jar) ein solches jar erstellt, wenn ich dieses starte erscheint die Meldung: Couldn't find main class.

Diese musste ich in Eclipse angeben, also schrib ich da rein 'InsaneSnake', das ist die Klasse (inkl. Standartkonstruktor) welche auch die "public static void main(String[] args)" besitzt.

Was ist da falsch?
 

Oni

Top Contributor
habe das noch nie mit eclipse probiert. mache das immer über die konsole(cmd)

Code:
jar cfvm BelieberJarName.jar manifest.txt *.class
evt halt noch package's


inhlat der manifest:
Code:
MAIN-CLASS: DeinKlassenName
wichtig die leerzeile am ende und der klassenname(von main klasse) ohne die endung *.class
 
D

dR.LoL

Gast
Was genau ist ein Manifest?

Also ich wollte es so machen, mal ein Screen.
pic.jpg
 
D

dR.LoL

Gast
Also in Eclipse?
Das ist IN eclipse die einzige Art, die ich fand welche was mit jar zu tun hat (Kenn aber Eclipse auch erst seit neuem!)

und mit "jar ..." kann ichs nicht machen, da dieser Befehl bei mir nicht exisitiert.

(Path Variable kann ich nicht ändern, bin hier kein Admin)
 

bummerland

Top Contributor
Anonymous hat gesagt.:
Also in Eclipse?
Das ist IN eclipse die einzige Art, die ich fand welche was mit jar zu tun hat (Kenn aber Eclipse auch erst seit neuem!)

und mit "jar ..." kann ichs nicht machen, da dieser Befehl bei mir nicht exisitiert.

(Path Variable kann ich nicht ändern, bin hier kein Admin)

du kannst auch direkt den pfad zur jar.exe angeben.

gibts bei dir nicht File - Export oder so? Kenn Eclipse nur auf deutsch.
 
D

dR.LoL

Gast
Ok.
1. Versuch auf die manifest art ^^
Das file sieht genau so aus, wie du es beschrieben hast:
Hier was gearbeitet wurde:

U:\>C:\Sun\AppServer\jdk\bin\jar.exe cfvm InsaneSnake.jar C:\java\develop\Trial\
manifest.txt C:\java\develop\Trial\src\*.class
java.io.IOException: invalid manifest format
at java.util.jar.Manifest.read(Manifest.java:193)
at java.util.jar.Manifest.<init>(Manifest.java:52)
at sun.tools.jar.Main.run(Main.java:123)
at sun.tools.jar.Main.main(Main.java:903)


Jetzt in Eclipse drin, kann ich ein jar exporten, also habs gefunden.
Export->JAR File ->Pfad+Filename angeben -> Alles genau durchlesen und Zeit verschwenden dabei, und dann schlussendlich auf FINISH klicken. Doch was passiert? Wie gesagt, reine Zeit verschwendung war das durchlesen, den nun steht da, "JAR creation failed" und keine Zeile mehr :-((
 
D

dR.LoL

Gast
Pff... jetzt hat ers gemacht und erstellt via Eclipse, jetzt meckert er aber wieder rum: Keine Main methode...

Der Witz der Sache ist, Eclipse hat diese Datei "manifest" selbst erstellt, allerdings schaut sie so aus:

--------------------------------
Manifest-Version: 1.0
Sealed: true
Main-Class: InsaneSnake

Name: /
Sealed: false


--------------------------------
 

Oni

Top Contributor
bei eclipse hat das bei mir auch nicht funktioniert. ka warum...


aber nochmal zur erstellung via konsole(cmd)

wenn die manifest datei nicht im gleichen verzeichnis liegt wie deine main-class muss du das package angeben

manifest.txt
Code:
class-path: package.unterpackage. .
main-class: package.MainKlasse
// leerzeile
 

dR.LoL

Bekanntes Mitglied
Code:
class-path: C:\java\develop\Trial\src
main-class: Trial.InsaneSnake

So schauts aus... und CMD geb ich das ein:

Code:
C:\java\develop\Trial>C:\Sun\AppServer\jdk\bin\jar.exe cfvm InsaneSnake.jar C:\java\develop\Trial\manifest.txt C:\java\develop\Trial\bin\*.class


Dann kommt das:
Code:
java.io.IOException: invalid manifest format
        at java.util.jar.Manifest.read(Manifest.java:193)
        at java.util.jar.Manifest.<init>(Manifest.java:52)
        at sun.tools.jar.Main.run(Main.java:123)
        at sun.tools.jar.Main.main(Main.java:903)

Ich glaube wir kommen dem Problem langsam auf die Spur ^^

Gruss vom LoL

PS: Wir haben die letzten beiden Einträge immer um die gleiche Zeit submitted :D hehe
 

Oni

Top Contributor
probiers mal so:

class-path kannst glaube ich weglassen wenn du nur ein package hast

Manifest:
Code:
main-class: Trial.InsaneSnake
//leerzeile


müsste auch mit realtiven path gehen

Konsole:
Code:
C:\java\develop\Trial>jar   cfvm    InsaneSnake.jar    manifest.txt    bin/*.class
 

dR.LoL

Bekanntes Mitglied
Also diese Leerzeile, ist nicht "//leerzeile" sondern einfach ein Enter mehr?

Habs jetzt genau so, wies du da oben hast, AUSSER dass ich mittels "C:\Sun\AppServer\jdk\bin\jar.exe" auf die jar zugreiffen muss, da ich diese nicht in der Umgebungsvariabeln habe.


Fehler ist immer noch der:
Code:
java.io.IOException: invalid manifest format
        at java.util.jar.Manifest.read(Manifest.java:193)
        at java.util.jar.Manifest.<init>(Manifest.java:52)
        at sun.tools.jar.Main.run(Main.java:123)
        at sun.tools.jar.Main.main(Main.java:903)
 

Oni

Top Contributor
ja, leerzeile == enter.

hmm, es müsste eigentlich so klappen. oder es hängt mit der umgebungsvariablen zusammen.


du könntest es nochmal so probieren. bei class-path steht jetzt ein Punkt "."
Code:
class-path: .
main-class: Trial.InsaneSnake

die klasse InsaneSnake liegt im verzeichnis:
C:\java\develop\Trial\InsaneSnake.class

und die manifest.txt im verzeichniss:
C:\java\develop\Trial\manifest.txt

??
 

zx81

Mitglied
dR.LoL hat gesagt.:
Jetzt in Eclipse drin, kann ich ein jar exporten, also habs gefunden.
Export->JAR File ->Pfad+Filename angeben -> Alles genau durchlesen und Zeit verschwenden dabei, und dann schlussendlich auf FINISH klicken. Doch was passiert? Wie gesagt, reine Zeit verschwendung war das durchlesen, den nun steht da, "JAR creation failed" und keine Zeile mehr :-((

das sollte so schon funktionieren. klick mal nicht gleich auf finish, sondern gehe alle fenster mit next durch. hast du im fenster 'JAR Manifest Specification' evtl. vergessen unten bei 'Select the class of the application entry point' die main-class einzutragen?
 

dR.LoL

Bekanntes Mitglied
Also meine Struktur sieht so aus:

C...../Trial

Enthält
Ordner:
bin, src, log
Files:
.classpath, .fatjar, .project, manifest.txt

Ordner bin enhält:
ColorRectangle.class
InsaneSnake.class
WindowClosingAdapter.class

Ordner src enthält:
InsaneSnake.java
WindowClosingAdapter.java


@Oni, auch das geht nicht.
@zx81, auch das geht nicht.


Jetzt mal etwas code... vieleicht ist da ja was missverstanden worden und falsch:

Code:
public class InsaneSnake extends Frame implements Runnable
{
....
  //Main
  public static void main(String[] args)
  {
    InsaneSnake frame = new InsaneSnake();
    frame.setSize(300,300);
    frame.setVisible(true);
    frame.startAnimation();
  }
  
  //Construct
  public InsaneSnake()
  {
    super("InsaneSnake");
    setBackground(BGCOLOR);
    addWindowListener(new WindowClosingAdapter(true));
    snake = new Vector();
  }
.....
}

Ist das wirklich korrekt?
main-class: Trial.InsaneSnake
Eins ist klar, die main methode liegt in der Klasse InsaneSnake, das Projekt heisst Trial, aber ich glaube, das mit dem Packet.Klasse ist was anderes? Eclipse zeigt mir diese Struktur an:

Code:
Trial
  src
    default package
      InsaneSnake.java
         Jegliche Dinger der Klasse
      WindowClosingAdapter.java
         Jegliche Dinger der Klasse
    JRE System Library
       Dies und Das...
    log
      Irgend welche LogFiles...
cmd.exe.lnk
manifest.txt
Trial.jar


Hoffe ich bring das heute (vor Weekend) noch hin...
 

Oni

Top Contributor
müsste so gehen, ansonsten bin ich auch ratlos

Manifest:
Code:
main-class: bin.InsaneSnake

Konsole:
Code:
C:\java\develop\Trial>jar   cfvm    InsaneSnake.jar    manifest.txt    bin/*.class

was du auch mal testen könntest ist, was passiert wenn du das aufrufst. erstellt er dann eine *.jar? die wäre zwar nicht ausführbar. aber dann wüsste man zumindest ob es klappt.

Konsole:
Code:
C:\java\develop\Trial>jar   cfv   InsaneSnake.jar   bin/*.class


unter eclipse hat es bei mir jetzt auch geklappt nach dem ich next gerückt habe und die main-class angegeben habe
 

dR.LoL

Bekanntes Mitglied
Ach ja, fragt sich nur wer jetzt der Idiot ist :D
hehe

Ich hätte wohl das mit den Zeilen nicht so genau nehmen sollen...

ZEILE 1 hab ich immer nen Enter rein getan, weils bei euch so aussah!

Jetzt gehts...
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Wie debugge ich dies am besten: SingleThreadExecutor führt Task nicht aus..? Java Basics - Anfänger-Themen 29
S Gibt es irgendeine Möglichkeit, dies zu tun?(Android Studio) Java Basics - Anfänger-Themen 1
S Ist dies ein Bug in Eclipse Java Basics - Anfänger-Themen 2
JavaNewbie2.0 Warum ist dies nicht möglich? Java Basics - Anfänger-Themen 7
O Starte Timer, während anderer Timer noch läuft. Ruft dies Schwierigkeiten hervor? Java Basics - Anfänger-Themen 0
O Funktioniert dies? Und gibt es eine bessere Lösung? Java Basics - Anfänger-Themen 6
Chocola Datums-String mit "ungültigem Anhängsel" wird ohne Fehler geparsed. Kann man dies irgendwie beheben? Java Basics - Anfänger-Themen 3
Z Array mit daten einer datenbankbefüllen und dies an eine tabelle geben Java Basics - Anfänger-Themen 6
P Keinen Wert - wie kann dies in eine Bedinung geprüft werden Java Basics - Anfänger-Themen 4
T aktuelles jahr ermitteln (und nur dies) Java Basics - Anfänger-Themen 3
C Sollte man dies kapseln? Java Basics - Anfänger-Themen 4
I Push Nachrichten von JAVA EE App an Mobile App Java Basics - Anfänger-Themen 3
H .java Dateien in Eclipse einbinden und ausführen Java Basics - Anfänger-Themen 1
onlyxlia Schlüsselworte Was meint man mit "einen Typ" in Java erstellen? Java Basics - Anfänger-Themen 2
O Java Kara geschweifte Klammern Java Basics - Anfänger-Themen 2
richis-fragen Mausrad logitech kann links und rechts klick wie in java abragen. Java Basics - Anfänger-Themen 15
XWing Java Klssenproblem Java Basics - Anfänger-Themen 4
R Umgebungsvariable java -cp gibt immer Java-Hilfe... Java Basics - Anfänger-Themen 3
farbenlos Csv Datei in Java einlesen Java Basics - Anfänger-Themen 18
F TableModelListener: java.lang.ArrayIndexOutOfBoundsException: 132 Java Basics - Anfänger-Themen 3
G Java 8 - Support-Ende Java Basics - Anfänger-Themen 7
T Java Weihnachtsbaum + Rahmen Java Basics - Anfänger-Themen 1
N Will mit Java anfangen Java Basics - Anfänger-Themen 13
Ü Java Array - Buchstaben als Zahlen ausgeben Java Basics - Anfänger-Themen 22
M Java Iterator Verständnisfrage Java Basics - Anfänger-Themen 6
M Java Mail Programm Java Basics - Anfänger-Themen 4
Sniper1000 Java 391 für Windows Java Basics - Anfänger-Themen 37
J Java long- in int-Variable umwandeln Java Basics - Anfänger-Themen 6
JaZuDemNo Java im Studium Java Basics - Anfänger-Themen 7
E Java Programm zur anzeige, ob Winter- oder Sommerzeit herrscht Java Basics - Anfänger-Themen 62
I QR code in Java selber generieren Java Basics - Anfänger-Themen 5
V Java-Ausnahmebehandlung: Behandlung geprüfter Ausnahmen Java Basics - Anfänger-Themen 1
krgewb Java Streams Java Basics - Anfänger-Themen 10
A Überwältigt von der komplexen Java Welt Java Basics - Anfänger-Themen 29
O Mehrfachvererbung auf Spezifikations- und Implementierungsebene in Java. Interfaces Java Basics - Anfänger-Themen 19
John_Sace Homogene Realisierung von Generics in Java ? Java Basics - Anfänger-Themen 19
P Meldung aus Java-Klasse in Thread an aufrufende Klasse Java Basics - Anfänger-Themen 1
R mit Java API arbeiten Java Basics - Anfänger-Themen 9
P JDK installieren Probleme bei der Java-Installation Java Basics - Anfänger-Themen 8
S Java: Wie sortiere ich eine ArrayList benutzerdefinierter Objekte nach einem bestimmten Attribut? Java Basics - Anfänger-Themen 2
Timo12345 JNLP File mit Java öffnen Java Basics - Anfänger-Themen 2
S Video Editierung mit Java.._ Java Basics - Anfänger-Themen 2
F Einstelungen in Java - CursorBlinkRate Java Basics - Anfänger-Themen 10
A PHP $_POST["name"] in Java Java Basics - Anfänger-Themen 3
vivansai21 Is there a oneliner to create a SortedSet filled with one or multiple elements in Java? Java Basics - Anfänger-Themen 9
Athro-Hiro Weißes Bild in Java erstellen Java Basics - Anfänger-Themen 3
Arjunreddy Can someone please tell me how to use a debugger in BlueJ(a Java environment) Java Basics - Anfänger-Themen 1
M Java assoziationen (UML) Java Basics - Anfänger-Themen 8
H Excel-Tabellen mit Java erstellen Java Basics - Anfänger-Themen 4
Simon16 Java ArrayListe von einer Klasse sortieren Java Basics - Anfänger-Themen 2
P Wie kann ich in meinem Java Programm etwas dauerhaft speichern? Java Basics - Anfänger-Themen 5
H Nutzt Eclipse alle CPU-Threads beim Ausführen von Java-Programmen? Java Basics - Anfänger-Themen 4
xXGrowGuruXx Java einstieg, leichte sache 0 verstanden Java Basics - Anfänger-Themen 7
A java.sql.SQLException: Data type mismatch. Java Basics - Anfänger-Themen 1
H Java-Programm zur Ausgabe von Zuständen Java Basics - Anfänger-Themen 80
N Java Spiel Figur auf dem Hintergrundbild bewegen. Java Basics - Anfänger-Themen 11
G Kann Java-Programm nicht als jar aufrufen, auch als EXE nicht Java Basics - Anfänger-Themen 19
N Java Taschenrechner hat Jemand vlt einen Tipp dafür wie ich jetzt die buttons verbinden kann und das Ergebnis auf dem textfield anzeigen lassen kann Java Basics - Anfänger-Themen 13
A Lerngruppe Java Java Basics - Anfänger-Themen 2
G Help me in the Java Program Java Basics - Anfänger-Themen 2
L Java- Vererbung Java Basics - Anfänger-Themen 4
LimDul Suche Java Stream Tutorial Java Basics - Anfänger-Themen 2
_so_far_away_ Ich möchte Java lernen Java Basics - Anfänger-Themen 11
benny1993 Java Programm erstellen für ein Fußball-Turnier Java Basics - Anfänger-Themen 3
M Datentypen While-Schleife eine Java Methode erstellen Java Basics - Anfänger-Themen 3
V Bild per Java Script austauschen Java Basics - Anfänger-Themen 7
MoxMorris this Keyword in Java Java Basics - Anfänger-Themen 14
D Wie kann man in Java nach Arrays auf Duplikate prüfen Java Basics - Anfänger-Themen 12
wolei JAVA Zeitdifferenz feststellen. Java Basics - Anfänger-Themen 4
DiyarcanZeren Rekursion in Java Java Basics - Anfänger-Themen 5
wolei Java generic interface in a generic class Java Basics - Anfänger-Themen 6
monsterherz Ablauf der Erstellung eines Java Programmes Java Basics - Anfänger-Themen 17
monsterherz Circle.java:5: error: <identifier> expected Java Basics - Anfänger-Themen 2
julian-fr Wie kann ich am besten Java lernen? Java Basics - Anfänger-Themen 17
A Java-Properties und -RessourceBundles Java Basics - Anfänger-Themen 5
lrnz22 Java-Basics-Aufgabe Java Basics - Anfänger-Themen 8
R Java kann nicht installiert werden Java Basics - Anfänger-Themen 8
marcelnedza Finde meinen Fehler in einer Methode nicht, Java Karol Java Basics - Anfänger-Themen 15
G In ein java Dokument Ton einbinden Java Basics - Anfänger-Themen 1
C was heisst es wenn java ']' erwartet ? Java Basics - Anfänger-Themen 2
KeinJavaFreak Erste Schritte Programm "Java(TM) Platform SE binary " nicht vorhanden Java Basics - Anfänger-Themen 1
KeinJavaFreak Erste Schritte Java "Executable Jar File" nicht vorhanden Java Basics - Anfänger-Themen 1
melisax Java 2D-Array Tabelle Java Basics - Anfänger-Themen 4
melisax Java Array Wert an bestimmtem Index angeben Java Basics - Anfänger-Themen 14
J Java Testklasse Java Basics - Anfänger-Themen 5
P Java Selenium . Parameterized.Parameters erzeugt eine Fehlermeldung Java Basics - Anfänger-Themen 14
W Java-Code mit Array Java Basics - Anfänger-Themen 14
W Java-Code Java Basics - Anfänger-Themen 2
P BeforeEach AfterEach werden nicht ausgeführt. Java / Selenium Java Basics - Anfänger-Themen 4
A Wie führe ich eine Batch-Datei von meiner Java-Anwendung aus? Java Basics - Anfänger-Themen 18
W Java code- TicTac toe Java Basics - Anfänger-Themen 51
Ostkreuz Java Docs Java Basics - Anfänger-Themen 9
R Java boolean Unterschied " == " und " = " Java Basics - Anfänger-Themen 3
D Java Programm mit Batch-Datei starten Java Basics - Anfänger-Themen 32
W Java-code Java Basics - Anfänger-Themen 8
W Java-code Java Basics - Anfänger-Themen 9
W Java-Code erklären Java Basics - Anfänger-Themen 6
A Java Kurs / Tutorial Java Basics - Anfänger-Themen 6
K Java Lotto Spiel; ich komme nicht weiter Java Basics - Anfänger-Themen 15
R Operatoren Rechenoperation in Java verwenden für Calculator Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben