# Eclipse: java.lang.NullPointerException bei System.console().printf()



## FlorianM (2. Jul 2011)

Hallo zusammen,
wie im Titel schon beschrieben habe ich ein Problem mit Eclipse. Bei der Verwendung von console() beschwert sich der Compiler.
Folgenden code kann ich ohne Probleme über CMD ausführen, nur mit eclipse klappts nicht:

```
import java.io.Console;
class ThisIsIt 
{
	public static void main(String[] args) 
	{
		Console cons = System.console();
		cons.printf("Grüße");
	}
}
```

Ich benutze Eclipse Classic 3.7 x64 auf einem Win7 x64 System.
PATH-Variable hab ich gesetzt: C:\Java\jdk1.6.0_26\bin;

Kann damit jemand was anfangen?


----------



## XHelp (2. Jul 2011)

```
console()
```
 kann durch aus null zurückliefern, so wie es in [JAPI]System#console()[/JAPI] beschrieben ist. Allerdings ist es komisch, dass sich der *Compiler* beschwert. Warum nicht 
	
	
	
	





```
System.out.println
```
?


----------



## FlorianM (2. Jul 2011)

Schönen guten Abend XHelp,

System.console(), weil ich gerade ein Java-Buch zum selbstlernen durcharbeite und es darin vorkam. Ist doch auch eine genehme Mehtode Umlaute und ß ohne Escape auszugeben, oder?


----------



## XHelp (2. Jul 2011)

In dem Buch geht es vermutlich nicht um Eclipse. Auf jeden Fall kann man sich auf 
	
	
	
	





```
conosle()
```
 nicht verlassen. Es gibt auch schon eigene Themen diesbezüglich hier im Forum,  z.B. http://www.java-forum.org/java-basi...ystem-console-liefert-immer-null-zurueck.html

Habe irgendwo irgendwie irgendwann mal gelesen, dass es irgendwo unter irgendwelchem Punkt in irgendeinem Eclipse wohl möglich ist irgendwie die Unterstützung von 
	
	
	
	





```
console()
```
 zu aktivieren... aber durch die ganzen _irgendwasauchimmer_ müsste klar sein, dass es nicht wirklich eine klare Aussage ist, sondern eher ein Anhaltspunkt zum Googlen.


----------



## Wildcard (3. Jul 2011)

In Eclipse wird der Output/Input auf die Eclipse Console umgeleitet und die Unterstützt das Console Interface nicht, daher liefert der Aufruf null zurück.


----------



## FlorianM (4. Jul 2011)

Ich danke euch für eure Antworten. Wird wohl ohne System.console gehen müssen...


----------



## Andi_CH (5. Jul 2011)

FlorianM hat gesagt.:


> System.console(), weil ich gerade ein Java-Buch zum selbstlernen durcharbeite und es darin vorkam. Ist doch auch eine genehme Mehtode Umlaute und ß ohne Escape auszugeben, oder?


Wieso soll das nicht gehen?


```
System.out.println("äöüàéèß");
```

Also ich finde diese Methode noch ganz angenehm


----------



## Anfänger Josh (28. Okt 2020)

import java.io.Console;
public class Console1 {

    public static void main(String[] args) {
    Console kons = System.console();
    System.out.print("\n"); 
    String ware = "Auto";
    double preis = 2.000;
    System.out.printf(" 1 %10s kostet %.4f Euro \n",ware,preis);

//So funktioniert es  die formatierte Textzeile auszugeben.

    }

}


----------



## mrBrown (28. Okt 2020)

@Anfänger Josh der Thread ist von 20*11* und deine Antwort hat nichts mit der Frage zu tun...


----------



## Anfänger Josh (29. Okt 2020)

Upps. Danke für deinen Hinweis!
 Ich hatte ebenfalls das Problem in Eclipse und konnte so mein Problem lösen.


----------



## krgewb (29. Okt 2020)

Bitte immer in code-Tags posten.

```
import java.io.Console;

public class Console1 {

    public static void main(String[] args) {
        Console kons = System.console();
        System.out.print("\n");
        String ware = "Auto";
        double preis = 2.000;
        System.out.printf(" 1 %10s kostet %.4f Euro \n", ware, preis);

        // So funktioniert es die formatierte Textzeile auszugeben.
    }

}
```


----------



## krgewb (29. Okt 2020)

@Anfänger Josh
So, wie du es programmiert hast, kostet das Auto nur 2 Euro.


----------



## Anfänger Josh (29. Okt 2020)

Oh, danke, wie müsste ich denn das programmieren um 2000 Euro als Ausgabe zu bekommen? 
Allerdings hab ich das nur als Versuch Formatierten Text auszugeben programmiert. Ist eine Übung aus meinem Java Buch.


----------



## krgewb (29. Okt 2020)

So:

```
double preis = 2000.000;
```
oder so:

```
double preis = 2_000.000;
```

Ausgabe:

```
1       Auto kostet 2000,0000 Euro
```


----------



## Anfänger Josh (30. Okt 2020)

Super Danke


----------

