Einbinden von Daten in ausführbare Jar

Leno

Bekanntes Mitglied
Hi liebes Java Forum,

ich habe mir ein kleines Tool geschrieben bzw. schreibe mir eins und brauche euere Hilfe.
Ich möchte eine ausführbare Jar machen,dafür nutze ich Apache Commons CLI als Kommandozeilenargument.

Ok soweit so gut,aber ich bekomme eine Exeption wenn ich mein Programm über Kommandozeile starten will,ich denke es liegt an meinen Pfadangaben im Programm die findet der nähmlich nicht !

Kann mir jemand helfen und sagen wie ich richtig Daten in eine Jar einbinde und dann nutze ?
Ich wäre sehr Dankbar.

Vielen Dank.

Gruß

Leno
 

Anhänge

  • aufbau.PNG
    aufbau.PNG
    12,3 KB · Aufrufe: 39
  • fehler_1.jpg
    fehler_1.jpg
    138,8 KB · Aufrufe: 45
In einem jar gibt es keine Dateien. Hier kann man also nicht mit der Klasse File arbeiten. Auslesen kann man solche Elemente mittels getClass().getResourceAsStream(...).
Aber Achtung: Daten in einem jar sind nur read only. Falls Daten geschrieben werden sollen müssen solche Elemente als Datei ausserhalb des jars liegen.
 
Michael hat Dir doch richtig geantwortet. Brauchst Du eine genauere Erklärung oder hat er Deine Frage falsch verstanden?

Ebenius
 
Irgendwie verstehe ich das nicht mit getClass().getResourceAsStream(...).
Wie wende ich das an,z.B. auf eine TXT Datei ?
 
Java:
private static void readAdress() {

		String s = "C:\\adessoWorkbench\\_person_entität\\src\\Data\\adressen_deutschland";
		
		InputStream in = getClass().getResourceAsStream("1.txt"); //???????
		 
		adressDaten = new ArrayList<Adress>();

		String line = null;

		try {

			fr = new FileReader(s);
			br = new BufferedReader(fr);

			while ((line = br.readLine()) != null) {

				String temp[] = line.split(",");

				adressDaten.add(new Adress(temp[0], temp[1], temp[2], temp[3],
						temp[4], temp[5], temp[6], temp[7]));

			}

		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}

		// mischt die Adressen
		Collections.shuffle(adressDaten);
		
	}
}

Mein Programm nimmt die Daten und liest Sie aus,Ihr sagt ich soll getClass().getResourceAsStream("1.txt"); anwenden,aber der Compiler meckert
 

Neue Themen


Zurück
Oben