Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
 
skypevasily1299
0 / 0 / 0
Регистрация: 31.07.2016
Сообщений: 8
#1

Gradle build finished with 4 error(s). Android Studio. My First App - Программирование Android

31.07.2016, 11:14. Просмотров 841. Ответов 17

Добрый день, уважаемые форумчане!

Я - новичок в программировании под Андройд. Установил себе последнюю версию программы Android Studio с сайта developer.android.com и начал создавать своё первое приложение под Андройд так как это описано в самоучителе https://developer.android.com/training/index.html. Суть приложения сводится к созданию двух активити, в первом вбивается текст и отправляется кнопкой "SEND" на вывод второму активити. Сделал всё вроде бы так как описано в самоучителе, но при попытке компиляции проекта возникают 4 ошибки:

- Error: (17, 60) error: cannot find symbol variable EXTRA_MESSAGE
- Error: (22, 57) error: cannot find symbol variable activity_display_message
- Error: (21, 25) error: cannot find symbol variable EXTRA_MESSAGE
- Error: Execution failed for task ':app:compileDebugJavaWithJavac'.

> Compilation failed; see the compiler error output for details.

Вот что пишет compiler error output:

C:\Users\User\AndroidStudioProjects\MyFirstApp2\app\src\main\java\com\example\myfirstapp2\DisplayMessageActivity.java:17 : error: cannot find symbol
String message = intent.getStringExtra(MainActivity.EXTRA_MESSAGE);
^
symbol: variable EXTRA_MESSAGE
location: class MainActivity
C:\Users\User\AndroidStudioProjects\MyFirstApp2\app\src\main\java\com\example\myfirstapp2\DisplayMessageActivity.java:22 : error: cannot find symbol
ViewGroup layout = (ViewGroup) findViewById(R.id.activity_display_message);
^
symbol: variable activity_display_message
location: class id
C:\Users\User\AndroidStudioProjects\MyFirstApp2\app\src\main\java\com\example\myfirstapp2\MainActivity.java:21: error: cannot find symbol
intent.putExtra(EXTRA_MESSAGE, message);
^
symbol: variable EXTRA_MESSAGE
location: class MainActivity
3 errors

:app:compileDebugJavaWithJavac FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:compileDebugJavaWithJavac'.
> Compilation failed; see the compiler error output for details.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Помогите, пожалуйста, разобраться! Я - новичок и мне пока самому разобраться трудновато. Буду признателен за любую помощь/наставления.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.07.2016, 11:14
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Gradle build finished with 4 error(s). Android Studio. My First App (Программирование Android):

В android studio - Ошибка: build.gradle error (23,17) - Программирование Android
В android studio - Ошибка: build.gradle error (23,17), только установил, изучаю самостоятельно по книге и видео. Какая может быть причина...

`Gradle build finished with 1 error` в пустом приложении - Программирование Android
Приветствую. Использую Android Studio. Раньше работало; теперь после переустановки системы не хочет собираться даже пустой проект...

Android.support.v4.app.FragmentActivity не работает в Android Studio - Программирование Android
объясните пожалуйста,как в андроид студио добавить вышеуказанную библиотеку,чтобы работало у меня вот это Активити package...

Gradle не формирует проект в Android Studio - Программирование Android
Всем привет! Нужна помощь при создание нового проекта в Android Studio, Gradl выдает ошибку показанную на картинке. В чем может быть...

Ошибка Gradle Java finished with non-zero exit value 2 - Программирование Android
Возникает данная ошибка. Сразу скажу, что здесь я уже был и рекомендации делал: Java finished with non-zero exit value 2

Как настроить gradle в Android Studio на работу с NDK - Программирование Android
Можете дать ссылку на готовый пример или подробное описание как подключить ndk в android studio?? NDK я скачал с сайта распаковал архив и...

17
some_name
Вежливость-главное оружие
226 / 224 / 55
Регистрация: 19.02.2013
Сообщений: 1,441
31.07.2016, 11:43 #2
Цитата Сообщение от skypevasily1299 Посмотреть сообщение
cannot find symbol variable EXTRA_MESSAGE
проверьте, EXTRA_MESSAGE существует?
возможно что при сборке проекта не подтягивается какая-нибудь нужная библиотека
0
Vladimir93
41 / 41 / 5
Регистрация: 28.06.2015
Сообщений: 168
31.07.2016, 12:08 #3
А что тут не понятно. Не может найти переменные
Error: (17, 60) error: cannot find symbol variable EXTRA_MESSAGE
- Error: (22, 57) error: cannot find symbol variable activity_display_message
- Error: (21, 25) error: cannot find symbol variable EXTRA_MESSAGE
Так же лайот не может найти. Вы видимо половину программы не сделали. Гардел настроили? Ресурсы R. в листинге красным не подчеркнуты?

Добавлено через 13 минут
Тут еще КЭП подсказывает - интернет должен быть подключен. Студя так работает.
0
skypevasily1299
0 / 0 / 0
Регистрация: 31.07.2016
Сообщений: 8
31.07.2016, 13:16  [ТС] #4
Цитата Сообщение от some_name Посмотреть сообщение
проверьте, EXTRA_MESSAGE существует?
возможно что при сборке проекта не подтягивается какая-нибудь нужная библиотека
При попытке исправить ошибку с EXTRA_MESSAGE Android Studio предлагает 7 вариантов:
- create class 'EXTRA_MESSAGE'
- create constant field 'EXTRA_MESSAGE'
- create field 'EXTRA_MESSAGE'
- create inner class 'EXTRA_MESSAGE'
- create local variable 'EXTRA_MESSAGE'
- create parameter 'EXTRA_MESSAGE'
- rename reference

Что выбирать?
0
some_name
Вежливость-главное оружие
226 / 224 / 55
Регистрация: 19.02.2013
Сообщений: 1,441
31.07.2016, 13:31 #5
skypevasily1299, проверьте еще раз тот tutorial, по которому вы это делаете.
вот, прогуглил, и там есть код, где объявляется эта константа:


Кликните здесь для просмотра всего текста

In MainActivity.java, add the code shown below to sendMessage():
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public class MainActivity extends AppCompatActivity {
    public final static String EXTRA_MESSAGE = "com.example.myfirstapp.MESSAGE";
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
 
    /** Called when the user clicks the Send button */
    public void sendMessage(View view) {
        Intent intent = new Intent(this, DisplayMessageActivity.class);
        EditText editText = (EditText) findViewById(R.id.edit_message);
        String message = editText.getText().toString();
        intent.putExtra(EXTRA_MESSAGE, message);
        startActivity(intent);
    }
}
0
skypevasily1299
0 / 0 / 0
Регистрация: 31.07.2016
Сообщений: 8
31.07.2016, 13:31  [ТС] #6
Цитата Сообщение от Vladimir93 Посмотреть сообщение
А что тут не понятно. Не может найти переменные

Так же лайот не может найти. Вы видимо половину программы не сделали. Гардел настроили? Ресурсы R. в листинге красным не подчеркнуты?

Добавлено через 13 минут
Тут еще КЭП подсказывает - интернет должен быть подключен. Студя так работает.
Я не знаю, сделал я половину программы или не сделал, но я сделал всё так, как предложено в обучающем курсе на сайте developer.android.com, откуда я скачивал последнюю версию программы Android Studio. Что значит - настроил ли я гардел? Как его можно и нужно настроить? Что такое листинг? В файле MainActivity.java ресурсы R. красным не подчёркнуты. Интернет подключён.

П.Сы. Ребят, на будущее, не надо здесь пальцы гнуть, я вопрос задал не для того, чтобы размерами членов помериться, а для того, чтобы получить на него ответ. Всем спасибо.
0
Pablito
2506 / 1990 / 620
Регистрация: 12.05.2014
Сообщений: 6,954
Завершенные тесты: 1
31.07.2016, 13:34 #7
Андроид на русском произносится и пишется через "и"
и если внимательно читать тот самоучитель, но можно в коде найти что же такое EXTRA_MESSAGE

Добавлено через 1 минуту
Цитата Сообщение от skypevasily1299 Посмотреть сообщение
Ребят, на будущее, не надо здесь пальцы гнуть, я вопрос задал не для того, чтобы размерами членов помериться, а для того, чтобы получить на него ответ. Всем спасибо.
и да, на будущее - тебе в интернете никто ничем не обязан и я могу точно также сказать - некрасиво рассказывать другим что делать, а что не делать, особенно, если ты ждешь от кого-то помощи
0
skypevasily1299
0 / 0 / 0
Регистрация: 31.07.2016
Сообщений: 8
31.07.2016, 13:39  [ТС] #8
some_name
Сделал всё так, как именно в этом уроке и описано (именно этот урок и делал), и получил именно те ошибки, о которых я писал... хм
0
some_name
Вежливость-главное оружие
226 / 224 / 55
Регистрация: 19.02.2013
Сообщений: 1,441
31.07.2016, 13:42 #9
skypevasily1299, т.е. вы добавили константу в класс MainActivity и все равно получаете cannot find symbol variable EXTRA_MESSAGE?
0
some_name
Вежливость-главное оружие
226 / 224 / 55
Регистрация: 19.02.2013
Сообщений: 1,441
31.07.2016, 13:42 #10
skypevasily1299, вообщем, не вы первый столкнулись с подобной проблемой
1
skypevasily1299
0 / 0 / 0
Регистрация: 31.07.2016
Сообщений: 8
31.07.2016, 13:46  [ТС] #11
Цитата Сообщение от some_name Посмотреть сообщение
skypevasily1299, т.е. вы добавили константу в класс MainActivity и все равно получаете cannot find symbol variable EXTRA_MESSAGE?
Сейчас 2 ошибки:
- Error: (11, 49) error: illegal start of expression
- Error: Execution failed for task ':app:compileDebugJavaWithJavac'.
> Compilation failed; see the compiler error output for details.

Как правильно написать это выражение:

private static final String EXTRA_MESSAGE = ;

???

Что нужно писать где 'String' и после знака '='?
0
skypevasily1299
0 / 0 / 0
Регистрация: 31.07.2016
Сообщений: 8
31.07.2016, 18:59  [ТС] #12
skypevasily1299, вообщем, не вы первый столкнулись с подобной проблемой
Спасибо большое. Постараюсь разобраться. В любом случае 2 ошибки - это уже не 4 ошибки, уже попроще

Добавлено через 4 часа 37 минут
Спасибо всем огромное! Оказывается дело было вот в чём:

1) In MainActivity.java, add the code shown below to sendMessage():

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public class MainActivity extends AppCompatActivity {
    public final static String EXTRA_MESSAGE = "com.example.myfirstapp.MESSAGE"; // <--- !!!
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
 
    /** Called when the user clicks the Send button */
    public void sendMessage(View view) {
        Intent intent = new Intent(this, DisplayMessageActivity.class);
        EditText editText = (EditText) findViewById(R.id.edit_message);
        String message = editText.getText().toString();
        intent.putExtra(EXTRA_MESSAGE, message);
        startActivity(intent);
    }
}
2) Оказывается вот эта сносочка была очень важной(!!!!!!!!):
Note: The XML layout generated by previous versions of Android Studio might not include the android:id attribute. The call findViewById() will fail if the layout does not have the android:id attribute. If this is the case, open activity_display_message.xml and add the attribute android:id="@+id/activity_display_message" to the layout element.
Я в файле activity_display_message.xml добавил строку android:id="@+id/activity_display_message" и у меня усё заработало! Ура! Первое приложение я создал!
0
powowstal
30 / 30 / 6
Регистрация: 21.03.2013
Сообщений: 362
31.07.2016, 19:13 #13
Цитата Сообщение от skypevasily1299 Посмотреть сообщение
Что нужно писать где 'String' и после знака '='?
это капец, возьмите учебник по java, потому что без весел на лодке не поплаваешь
1
some_name
Вежливость-главное оружие
226 / 224 / 55
Регистрация: 19.02.2013
Сообщений: 1,441
31.07.2016, 19:52 #14
powowstal, да, без основ будет тяжко
0
skypevasily1299
0 / 0 / 0
Регистрация: 31.07.2016
Сообщений: 8
31.07.2016, 20:15  [ТС] #15
powowstal, some_name, Ребят, тема закрыта, я свою проблему решил, причём сам безо всяких учебников по java и иже с ними, причём и другим отписал как эта проблема решается . Вам пример, когда без вёсел на лодке поплаваешь? Пожалуйста: яхта, скутер, катамаран, лодка с мотором, то есть с двигателем, в конце концов Без основ чего будет тяжко? Гребли на лодке? Ха-ха!
0
31.07.2016, 20:15
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.07.2016, 20:15
Привет! Вот еще темы с ответами:

Удаляется библиотека в Android Studio, хотя я уже добавил ее в Gradle - Программирование Android
Пробовал добавлять 2 способами 1) Закинул в папку сразу в AS и нажал Add new Library 2) Закинул в папку Libs и добавил в Graddle ...

Apache POI - build failed (android studio) - Программирование Android
Всем привет! Я столкнулся с проблемой пытаюсь подключить библиотеку Apache POI для работы XWPFDocument в Android studio, но мне выбывает...

При Make project ошибок нет, но при build apk: Error:Execution failed for task ':app:validateConfigSigning'. > - Программирование Android
Полная ошибка: Error:Execution failed for task ':app:validateConfigSigning'. &gt; Keystore file...

Не получается запустить проект (в android studio пишет Gradle 'MyApp' project refresh failed) - Программирование Android
Всем доброе перестал запускаться проект (до этого он тоже не запускался, но хоть кнопка Run работала) сообщения при запуске студии: ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru