Здравствуйте! Учитывая что с Java я работаю всего месяц, прошу не судить строго, но носом в ошибку таки тыкнуть.
Есть у меня такой код целиком списанный с мануала
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
OAuthService service = new ServiceBuilder()
.provider(TwitterApi.class)
.apiKey("сам ключ")
.apiSecret("секретка")
.build();
Scanner in = new Scanner(System.in);
System.out.println("=== Twitter's OAuth Workflow ===");
System.out.println();
System.out.println("Fetching the Request Token...");
Token requestToken = service.getRequestToken();
System.out.println("Got the Request Token!");
System.out.println();
System.out.println("Now go and authorize Scribe here:");
System.out.println(service.getAuthorizationUrl(requestToken));
System.out.println("And paste the verifier here");
System.out.print(">>");
Verifier verifier = new Verifier(in.nextLine());
Когда дело доходит до последней строки то выясняется, что in.nextLine() ничего не возвращает и соответственно verifier не создается.
Стек ошибки следующий
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
02-10 17:42:34.420: E/AdroidRuntime(8613): FATAL EXCEPTION: main
02-10 17:42:34.420: E/AndroidRuntime(8613): java.lang.IllegalStateException: Could not execute method of the activity
02-10 17:42:34.420: E/AndroidRuntime(8613): at android.view.View$1.onClick(View.java:2191)
02-10 17:42:34.420: E/AndroidRuntime(8613): at android.view.View.performClick(View.java:2532)
02-10 17:42:34.420: E/AndroidRuntime(8613): at android.view.View$PerformClick.run(View.java:9291)
02-10 17:42:34.420: E/AndroidRuntime(8613): at android.os.Handler.handleCallback(Handler.java:587)
02-10 17:42:34.420: E/AndroidRuntime(8613): at android.os.Handler.dispatchMessage(Handler.java:92)
02-10 17:42:34.420: E/AndroidRuntime(8613): at android.os.Looper.loop(Looper.java:150)
02-10 17:42:34.420: E/AndroidRuntime(8613): at android.app.ActivityThread.main(ActivityThread.java:4293)
02-10 17:42:34.420: E/AndroidRuntime(8613): at java.lang.reflect.Method.invokeNative(Native Method)
02-10 17:42:34.420: E/AndroidRuntime(8613): at java.lang.reflect.Method.invoke(Method.java:507)
02-10 17:42:34.420: E/AndroidRuntime(8613): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:849)
02-10 17:42:34.420: E/AndroidRuntime(8613): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:607)
02-10 17:42:34.420: E/AndroidRuntime(8613): at dalvik.system.NativeStart.main(Native Method)
02-10 17:42:34.420: E/AndroidRuntime(8613): Caused by: java.lang.reflect.InvocationTargetException
02-10 17:42:34.420: E/AndroidRuntime(8613): at java.lang.reflect.Method.invokeNative(Native Method)
02-10 17:42:34.420: E/AndroidRuntime(8613): at java.lang.reflect.Method.invoke(Method.java:507)
02-10 17:42:34.420: E/AndroidRuntime(8613): at android.view.View$1.onClick(View.java:2186)
02-10 17:42:34.420: E/AndroidRuntime(8613): ... 11 more
02-10 17:42:34.420: E/AndroidRuntime(8613): Caused by: java.util.NoSuchElementException
02-10 17:42:34.420: E/AndroidRuntime(8613): at java.util.Scanner.nextLine(Scanner.java:1417)
02-10 17:42:34.420: E/AndroidRuntime(8613): at your.SNotes.namespace.SpeakerNotesActivity.Tweet_OnClick(SpeakerNotesActivity.java:172)
02-10 17:42:34.420: E/AndroidRuntime(8613): ... 14 more
n
Я этот вопрос провентилировал и узнал что некоторые сборки jdk Scanner просто не обрабатывают. Нашел совет что in.nextLine() можно заменить на System.in.readLine(), или эквивалент, но в System.in readLine() нету.
Попробовал сделать так
1.
BufferedReader in = new BufferedReader(new InputStreamReader(System.in) );
Но в данном случае in.readLine() опять ни чего не возвращает.
Возникают вопросы:
1) Я допускаю какую то принципиальную ошибку в коде? И если да, то какую?
2) Мне нужно что то делать с jdk? И если да то что и как?
Подробные инструкции не нужны, но вектор бы знать хотелось.
Система Windows 7, среда разработки Eclipse SDK Version: 3.7.1. Приложение под Андроид.
Очень буду признателен за помощь.