티스토리 뷰

package console;
import java.io.Console;
public class Console107 {
	public static void main(String[] args) {
		Console console=System.console();
		char[] pass=console.readPassword("Enter password");
		String password=new String(pass);
		System.out.println(password);
	}
}

결과는?

이클립스에서 실행해보면

Exception in thread "main" java.lang.NullPointerException
at console.Console107.main(Console107.java:6)

이렇게 나온다.

컴파일시에는 아무런 문제가 없다. 실행시.. 그러나..

#122429 of eclipse 이클립스 버그라고 한다. console이 연결안되었으니..

그래서 정답은

The code reads the password without echoing characters on the console.

즉, 콘솔에서 문자 출력없이 password를 읽는다. 가 정답이다.

나 같은 경우는 콘솔 cmd 를 켜서 아래와 같이 실행을 했다. 현재 디렉토리를 classpath로 잡아줘야 한다. 그렇지 않으면 클래스를 못찾는다고 나온다.

D:\workspace\ocpjp_study\bin>java -cp .; console.Console107
Enter password

만약 출력하는 코드를 넣었다면

package console;
import java.io.Console;
public class Console107 {
	public static void main(String[] args) {
		Console console=System.console();
		char[] pass=console.readPassword("Enter password");
		String password=new String(pass);
		System.out.println(password);
	}
}

 

D:\workspace\ocpjp_study\bin>java -cp .; console.Console107
Enter password
ddddd

이렇게 출력을 할것이다.

https://stackoverflow.com/questions/104254/java-io-console-support-in-eclipse-ide

 

java.io.Console support in Eclipse IDE

I use the Eclipse IDE to develop, compile, and run my Java projects. Today, I'm trying to use the java.io.Console class to manage output and, more importantly, user input. The problem is that System.

stackoverflow.com

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함