Erstes Programm - Problem beim Ausführen als jar

Alph0r

Mitglied
Ist das erste Topic, dass ich hier eröffne, also hallo erstmal :)

Ich habe ein kleines Programm geschrieben, dass mir den Erwartungswert einer ebstimmten Situation beim Pokern ausrechnet. Der User soll dabei Eingaben über die Konsole machen und eine Ausgabe auf der Konsole sehen.

Wenn ich das ganze in Eclipse laufen lasse, gibt es keine Probleme. Wenn ich es als jar verpacke, passiert bei einem Doppelklich einfach garnichts. Hier mal der Source Code:

Code:
package Alles;


public class RiverEVProgramm {
public static void main(String[] args) {
	InputOutput.willkommen();
	InputOutput.potMethode();
	InputOutput.callVorneMethode();
	InputOutput.callHintenMethode();
	InputOutput.valueCRMethode();
	InputOutput.gtoFrage();
	InputOutput.gtoEintscheidungsMethode();
	if(Berechnung.getGTOBoolean()){
		Berechnung.gtoBluffCombos(Berechnung.getPot(), Berechnung.getValueCR());
	}
	else{
		InputOutput.bluffCRMethode();
	}
	Berechnung.evBFMethode(Berechnung.getPot(), Berechnung.getValueCR(), Berechnung.getBluffCR(), Berechnung.getCallVorne(), Berechnung.getCallHinten());
	Berechnung.evBCMethode(Berechnung.getPot(), Berechnung.getValueCR(), Berechnung.getBluffCR(), Berechnung.getCallVorne(), Berechnung.getCallHinten());
	System.out.println("Der Erwartungswert eines B/F entspricht ungefähr " + Berechnung.getEvBF()+ "BB pro Hand");
	System.out.println("Der Erwartungswert eines B/C entspricht ungefähr " + Berechnung.getEvBC()+"BB pro Hand");
	
	while(true){
		int i=3;
		System.out.println(i);
	}
	}

}

Code:
package Alles;

import java.io.*;

public class InputOutput {
//Erste Message im Programm
	public static void willkommen() {
		System.out
				.println("Willkommen bei RiverEV!\ndieses Programm berechnet den Erwartungswert einer Value-Bet");
	}
// Frage ob GTO Bluff-Frequenz benutzt wrden soll
	public static void gtoFrage(){
		System.out.print("Möchten sie eine balancierte Bluff-Frequenz für ihren Gegner annehmen?\nSchreiben sie bitte: \"Ja\" bzw. \"nein\":");
	}
// Methode, die Usereingaben einliest und den GTO Frequenz boolean setzt
	public static void gtoEintscheidungsMethode() {
		BufferedReader gtoReader = new BufferedReader(new InputStreamReader(
				System.in));
		String gtoEntscheidung = null;
		try {
			gtoEntscheidung = gtoReader.readLine();
		} catch (IOException ioe) {
			System.out.println("Fehler bei der Eingabe!");
			System.exit(1);
		}

		if (gtoEntscheidung.equals("ja") || gtoEntscheidung.equals("JA")
				|| gtoEntscheidung.equals("Ja") || gtoEntscheidung.equals("jA")) {
			Berechnung.setGTOBoolean(true);
			System.out.println("Sie haben sich dafür entschieden ihrem Gegner automatisch eine balancierte Bluff-Frequenz zu geben!");
		} else if (gtoEntscheidung.equals("nein")
				|| gtoEntscheidung.equals("NEIN")
				|| gtoEntscheidung.equals("Nein")) {
			Berechnung.setGTOBoolean(false);
			System.out
					.println("Sie haben sich dagegen entschieden, ihrem Gegner eine balancierte Bluff-Frequenz zu geben.\nSie können die Kombinationen seiner Bluff-Hände nun manuell bestimmen!");
		} else {
			System.out.print("Ungültige Eingabe, bitte Eingabe wiederholen: ");
			gtoEintscheidungsMethode();

		}

	}
	// Methode zum Setzen der Potgröße
	public static void potMethode(){
		System.out.print("Geben Sie Bitte die Potgröße vor ihrer Bet in BB an:");
		BufferedReader potReader = new BufferedReader(new InputStreamReader(
				System.in));
		int pot =0;
		String potSTR=null;
		try {
			potSTR = potReader.readLine();
		} catch (IOException ioe) {
			System.out.println("Fehler bei der Eingabe!");
			System.exit(1);}
		try {
			pot = Integer.parseInt(potSTR);
		} catch (Exception e) {
			System.out.println("Bitte geben sie eine Zahl ein!");
			potMethode();
		}
		if (pot<0){
			System.out.println("Bitte geben Sie eine positive Zahl ein");
			potMethode();
		}
		else
		Berechnung.setPot(pot);
		}
	//Methode zur bestimmung der CC RAnge, gegen die wir vorne sind
	public static void callVorneMethode(){
		System.out.print("Geben Sie Bitte die Handkombinationen der Gegnerischen Calling-Range ein, gegen die Sie vorne sind:");
		BufferedReader potReader = new BufferedReader(new InputStreamReader(
				System.in));
		int callVorne =0;
		String callVorneSTR=null;
		try {
			callVorneSTR = potReader.readLine();
		} catch (IOException ioe) {
			System.out.println("Fehler bei der Eingabe!");
			System.exit(1);}
		try {
			callVorne = Integer.parseInt(callVorneSTR);
		} catch (Exception e) {
			System.out.println("Bitte geben sie eine Zahl ein!");
			callVorneMethode();
		}
		if (callVorne<0){
			System.out.println("Bitte geben Sie eine positive Zahl ein");
			callVorneMethode();
		}
		else
		Berechnung.setCallVorne(callVorne);
		}
	//Methode zur bestimmung der CC RAnge, gegen die wir hinten sind
		public static void callHintenMethode(){
		System.out.print("Geben Sie Bitte die Handkombinationen der Gegnerischen Calling-Range ein, gegen die Sie hinten sind:");
		BufferedReader potReader = new BufferedReader(new InputStreamReader(
				System.in));
		int callHinten =0;
		String callHintenSTR=null;
		try {
			callHintenSTR = potReader.readLine();
		} catch (IOException ioe) {
			System.out.println("Fehler bei der Eingabe!");
			System.exit(1);}
		try {
			callHinten = Integer.parseInt(callHintenSTR);
		} catch (Exception e) {
			System.out.println("Bitte geben sie eine Zahl ein!");
			callHintenMethode();
		}
		if (callHinten<0){
			System.out.println("Bitte geben Sie eine positive Zahl ein");
			callHintenMethode();
		}
		else
		Berechnung.setCallHinten(callHinten);
		}
		//Methode zur bestimmung der C/R Combos, gegen die wir hinten sind
		public static void valueCRMethode(){
			System.out.print("Geben Sie Bitte die Handkombinationen der Gegnerischen Value-C/R Range ein:");
			BufferedReader potReader = new BufferedReader(new InputStreamReader(
					System.in));
			int valueCR =0;
			String valueCRSTR=null;
			try {
				valueCRSTR = potReader.readLine();
			} catch (IOException ioe) {
				System.out.println("Fehler bei der Eingabe!");
				System.exit(1);}
			try {
				valueCR = Integer.parseInt(valueCRSTR);
			} catch (Exception e) {
				System.out.println("Bitte geben sie eine Zahl ein!");
				valueCRMethode();
			}
			if (valueCR<0){
				System.out.println("Bitte geben Sie eine positive Zahl ein");
				valueCRMethode();
			}
			else
			Berechnung.setValueCR(valueCR);
			}
	
		//Methode zur manuellen Eingabe der Bluff CR Combos. Eine Methode zum Berechnen der GTO Bluff Combos befindet sich in der Berechnung Klasse
		public static void bluffCRMethode(){
			System.out.print("Geben Sie Bitte die Handkombinationen der Gegnerischen Bluff-C/R Range ein:");
			BufferedReader potReader = new BufferedReader(new InputStreamReader(
					System.in));
			int bluffCR =0;
			String bluffCRSTR=null;
			try {
				bluffCRSTR = potReader.readLine();
			} catch (IOException ioe) {
				System.out.println("Fehler bei der Eingabe!");
				System.exit(1);}
			try {
				bluffCR = Integer.parseInt(bluffCRSTR);
			} catch (Exception e) {
				System.out.println("Bitte geben sie eine Zahl ein!");
				bluffCRMethode();
			}
			if (bluffCR<0){
				System.out.println("Bitte geben Sie eine positive Zahl ein");
				bluffCRMethode();
			}
			else
			Berechnung.setBluffCR(bluffCR);
			}
}

Code:
package Alles;

public class Berechnung {
	
	private static double bluffCR=0;  //ANzahl der Bluff CR Combos
	private static double valueCR=0;  //Anzahl der Value CR Combos, jede besser als unsere Hand
	private static double callVorne=0;  //Anzahl Call Combos, gegen die wir vorne sind
	private static double callHinten=0;  //Anzahl Call Combos gegen die wir hinten sind
	private static double pot=0;  //Potgröße vor der Bet
	private static double evBF=0;  // EX SD EV des B/F
	private static double evBC=0;  // EX SD EV des B/C
	private static boolean gtoBoolean=false; //Boolean, ob die GTO Bluffing Frequenz gewählt wurde
	
	
	//setter und getter
	public static void setBluffCR(double bluffCR){
		Berechnung.bluffCR=(double)bluffCR;
	}
	public static double getBluffCR(){
		return Berechnung.bluffCR;
	}
	
	public static void setValueCR(int valueCR){
		Berechnung.valueCR = (double)valueCR;
	}
	public static double getValueCR(){
		return Berechnung.valueCR;
	}
	public static void setCallVorne(int callVorne){
		Berechnung.callVorne=callVorne;
	}
	public static double getCallVorne(){
		return Berechnung.callVorne;
	}
	public static void setCallHinten(int callHinten){
		Berechnung.callHinten=callHinten;
	}
	public static double getCallHinten(){
		return Berechnung.callHinten;
	}
	public static void setPot(int pot){
		Berechnung.pot=pot;
	}
	public static double getPot(){
		return Berechnung.pot;
	}
	public static void setGTOBoolean(boolean gtoBoolean){
		Berechnung.gtoBoolean = gtoBoolean;
	}
	public static boolean getGTOBoolean(){
		return Berechnung.gtoBoolean;
	}
	
	public static double getEvBF() {
		return evBF;
	}
	public static void setEvBF(double evBF) {
		Berechnung.evBF = evBF;
	}
	public static double getEvBC() {
		return evBC;
	}
	public static void setEvBC(double evBC) {
		Berechnung.evBC = evBC;
	}
	public static void gtoBluffCombos(double pot, double valueCR){
		double bluffCR=0;
		bluffCR=(valueCR/(pot+4));
		Berechnung.setBluffCR(bluffCR);
	}
	
	
	
	
	
	public static void evBFMethode(double pot, double valueCR, double bluffCR, double callVorne, double callHinten){
		double evBF=0;
		double combos=(valueCR+bluffCR+callVorne+callHinten);
		evBF=(bluffCR/combos)*(-1)*(pot+1)+(valueCR/combos)*(-1)+(callVorne/combos)+(callHinten/combos)*(-1);
		setEvBF(evBF);
	}
	public static void evBCMethode(double pot, double valueCR, double bluffCR, double callVorne, double callHinten){
		double evBC=0;
		double combos=(valueCR+bluffCR+callVorne+callHinten);
		evBC=(bluffCR/combos)*(2)+(valueCR/combos)*(-2)+(callVorne/combos)+(callHinten/combos)*(-1);
		setEvBC(evBC);
	}
	}

In der Jar befindet sich ein package, in dem alle Klassen sind.

Das Manifest:

Manifest-Version: 1.0
Main-Class: Alles.RiverEVProgramm

Woran könnte das Problem liegen?
 

fastjack

Top Contributor
Was ist denn die Fehlermeldung? Probiere es doch auch mal auf der Konsole

Code:
java -jar lala.jar
 

Alph0r

Mitglied
Danke schonmal, den Befehl kannte ich bisher nicht. Wenn ich das Jar per Konsole öffne, funktioniert das ganze.

Woran könnte es liegen, dass es nicht per Doppelklick auf die Jar geht?

Nochmal edit: Hab jetzt gelesen, dass man Programme ohne GUI generell nicht über einen Klick auf die Jar öffnen kann, das würde es erklären, wenn es stimmt.
 
Zuletzt bearbeitet:
G

Gast2

Gast
Deine Klasse heißt nicht
Code:
riverevprogramm
sondern
Code:
Alles.riverevprogramm
.
Wechsel ins verzeichnis bin und führe
Code:
java Alles.riverevprogramm
aus.
Evtl. fehlt dann noch ne classpath angabe wo er die klassen findet.

EDIT:
durch den edit oben sinnlos
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
E Erstes Programm - Problem mit Exception Java Basics - Anfänger-Themen 3
S Erstes Programm: Hallo Welt funktioniert nicht. Java Basics - Anfänger-Themen 3
O Erstes Programm: Matrizen Multiplikation Java Basics - Anfänger-Themen 10
D Auswahl und Ausgabe erstes Programm Java Basics - Anfänger-Themen 8
M Mein erstes Programm Java Basics - Anfänger-Themen 3
T erstes kleines Programm Java Basics - Anfänger-Themen 17
M Erste Schritte Erstes Programm mit Compiler öffnen Java Basics - Anfänger-Themen 4
M Mein erstes Java Programm Java Basics - Anfänger-Themen 5
E Erstes "kleines" Programm Java Basics - Anfänger-Themen 5
1 Mein erstes Programm, HELP!! Java Basics - Anfänger-Themen 2
A Erstes Programm: Polynom-Klasse Java Basics - Anfänger-Themen 15
D Mein erstes Programm flackert Java Basics - Anfänger-Themen 5
W Erste Schritte erstes Programm Java Basics - Anfänger-Themen 40
W Erstes eigens Programm - Klassen- und Schüler Verwaltungsprogramm Java Basics - Anfänger-Themen 5
M Erstes "sinnvolles" Programm Java Basics - Anfänger-Themen 11
B Methoden Mein erstes Programm - und gleich Probleme Java Basics - Anfänger-Themen 6
R [CODECHECK] Erstes Programm Java Basics - Anfänger-Themen 6
M Erstes Programm und Fehlermeldung Java Basics - Anfänger-Themen 5
M Sammlung von Anfängerfragen für mein erstes Programm Java Basics - Anfänger-Themen 15
G Erstes Java-Programm Java Basics - Anfänger-Themen 10
L Suche Verbesserungsvorschläge für mein erstes Programm Java Basics - Anfänger-Themen 34
Bierhumpen mein erstes großes Programm. Was ändern? verbessern? Java Basics - Anfänger-Themen 12
A Mein erstes Programm Java Basics - Anfänger-Themen 6
T Erstes Programm Java Basics - Anfänger-Themen 7
B Erstes Programm :-/ Java Basics - Anfänger-Themen 3
Alen123 Erstes Arbeiten mit Methoden. Java Basics - Anfänger-Themen 5
Igig1 Autoparkplatz verkettete Liste erstes und letztes Auto Java Basics - Anfänger-Themen 13
S Mein erstes eigenes Projekt - Aufbau und Strukturierung Java Basics - Anfänger-Themen 6
I Letztes, erstes Element vom Array Java Basics - Anfänger-Themen 9
X Array erstes und letztes Element tauschen Java Basics - Anfänger-Themen 2
J erstes Vorkommen eines Chars aus einem String entfernen Java Basics - Anfänger-Themen 3
J erstes Vorkommen eines chars entfernen Java Basics - Anfänger-Themen 1
H java erstes projekt Java Basics - Anfänger-Themen 502
M OOP Mein erstes Textadventure... Java Basics - Anfänger-Themen 3
K Erstes kleines Spieleprojekt - Java GUI in HTML einbinden Java Basics - Anfänger-Themen 3
V Erste Schritte Erstes Project - Hilfe Java Basics - Anfänger-Themen 9
J Erstes Applet läßt sich nicht anzeigen Java Basics - Anfänger-Themen 2
M Erstes Textrollenspiel funktioniert...nicht. Java Basics - Anfänger-Themen 2
L Erstes Projekt aus zwei Projekten Java Basics - Anfänger-Themen 1
T mein erstes Java projekt Java Basics - Anfänger-Themen 8
T OOP Mein erstes Java-Spiel - Schiffe versenken! Java Basics - Anfänger-Themen 2
M Erstes Prog. OS Abfrage Java Basics - Anfänger-Themen 9
E Mein erstes Java Projekt - Sauberer code? Java Basics - Anfänger-Themen 28
B Erstes Element eines Vectors erhalten Java Basics - Anfänger-Themen 5
A Textdatei einlesen - erstes Zeichen falsch Java Basics - Anfänger-Themen 20
I Liste Remove erstes Element Java Basics - Anfänger-Themen 5
J Bald erstes Java Buch durchgearbeitet - Wie gehts nun weiter? Java Basics - Anfänger-Themen 6
T Erstes Zeichen aus String löschen Java Basics - Anfänger-Themen 8
J erstes Prog./Klasse - Konstruktur/Objekterstellung funktioniert nicht Java Basics - Anfänger-Themen 25
B erstes Java-Applet Java Basics - Anfänger-Themen 7
M Erstes Zeichen in einem String in Großbuchstaben wandeln Java Basics - Anfänger-Themen 3
C Erstes Arraylist Element in for Schleife überspringen Java Basics - Anfänger-Themen 6
G Feststellen, ob erstes Zeichen eines Strings eine Ziffer ist Java Basics - Anfänger-Themen 11
M Serialisierung erstes Beispiel Java Basics - Anfänger-Themen 4
A erstes größeres Projekt Java Basics - Anfänger-Themen 14
P Mein erstes JAR-File Java Basics - Anfänger-Themen 8
G erstes Zeichen eines Strings herausfinden Java Basics - Anfänger-Themen 3
G erstes element einer haspmap Java Basics - Anfänger-Themen 5
G erstes Arbeiten mit Collections Java Basics - Anfänger-Themen 17
G erstes Arbeiten mit Packages Java Basics - Anfänger-Themen 2
T Erstes RPG: KeyAdapter Problem Java Basics - Anfänger-Themen 3
M erstes Zeichen ersetzen Java Basics - Anfänger-Themen 2
C Konstruktor wird nicht als erstes aufgerufen! Java Basics - Anfänger-Themen 11
O mit Regex erstes Zeichen überprüfen Java Basics - Anfänger-Themen 3
D JNDI-DataSource erstes mal benutzen Java Basics - Anfänger-Themen 4
C Erstes kleines Problem - string in chat ? Java Basics - Anfänger-Themen 9
M Erstes Element einer Enumeration? Java Basics - Anfänger-Themen 6
A Erstes Buch durchgelesen, wie weiter vorgehen? Java Basics - Anfänger-Themen 8
tomzen Programm ignoriert in der Ausführung Code Java Basics - Anfänger-Themen 8
A "Hello World"-Programm läuft nicht Java Basics - Anfänger-Themen 16
J Delay erzeugen, ohne Programm zu blockieren Java Basics - Anfänger-Themen 7
Ü Dead Code im Programm? Java Basics - Anfänger-Themen 13
M Java Mail Programm Java Basics - Anfänger-Themen 4
E Java Programm zur anzeige, ob Winter- oder Sommerzeit herrscht Java Basics - Anfänger-Themen 62
M Mini Jar-Programm Java Basics - Anfänger-Themen 51
G JTable Listselectionlistener friert das Programm ein Java Basics - Anfänger-Themen 8
M Das Programm stellt nichts dar Java Basics - Anfänger-Themen 2
K Programm compilierbar aber nicht ausführbar... Java Basics - Anfänger-Themen 21
Z Programm Ideen Java Basics - Anfänger-Themen 8
P Wie kann ich in meinem Java Programm etwas dauerhaft speichern? Java Basics - Anfänger-Themen 5
P Wie kann ich beispielsweise Speicherstände eines Spiels DAUERHAFT in meinem Programm speichern? Java Basics - Anfänger-Themen 3
H Java-Programm zur Ausgabe von Zuständen Java Basics - Anfänger-Themen 80
G Kann Java-Programm nicht als jar aufrufen, auch als EXE nicht Java Basics - Anfänger-Themen 19
benny1993 Java Programm erstellen für ein Fußball-Turnier Java Basics - Anfänger-Themen 3
T Programm stürzt ab Java Basics - Anfänger-Themen 40
KeinJavaFreak Erste Schritte Programm "Java(TM) Platform SE binary " nicht vorhanden Java Basics - Anfänger-Themen 1
G Programm läuft durch, ohne Eingabe aus dem Chat abzuwarten Java Basics - Anfänger-Themen 4
N Programm Funktioniert mit .txt Datei aber nicht mit .rtf Datei Java Basics - Anfänger-Themen 2
N Interpreter-Fehler Compiler zeigt keine Fehler an, aber das Programm läuft nicht (BlueJ) Java Basics - Anfänger-Themen 2
D Java Programm mit Batch-Datei starten Java Basics - Anfänger-Themen 32
Jul1n4tor Programm mit Scanner und If-Statements Java Basics - Anfänger-Themen 2
D Wie sehe ich ein Java-Programm? Java Basics - Anfänger-Themen 27
K Ist das Programm schlecht bzw. schlampig programmiert ? Java Basics - Anfänger-Themen 9
Zrebna Kann Java Programm nicht in Konsole ausführen Java Basics - Anfänger-Themen 1
K Warum läuft das Programm nicht(bzw. nicht richtig) Java Basics - Anfänger-Themen 4
M Von Eclipse zum richtigen Programm Java Basics - Anfänger-Themen 1
nbergmann IntelliJ: Wie lade ich ein fertiges Programm aus dem Lehrbuch? Java Basics - Anfänger-Themen 26
D Anfängerfrage zu meinem Programm. Java Basics - Anfänger-Themen 15
nbergmann Eclipse: Lehrbuch-Programm startet nicht Java Basics - Anfänger-Themen 22
I Jetty starten von Programm (Main) Java Basics - Anfänger-Themen 27

Ähnliche Java Themen

Neue Themen


Oben