Mice
Почетный участник
SODD - StackOverflow Driven Development. (с) Из родного вконтактика.
В общем, пока мой мак от меня временно уехал, решила я освоить поставленный мне больше полугода назад и шибко мощный, судя по причмокивающему жесту админа, виндовый комп. (Не спрашивайте, почему до этого я разворачивала девелопмент под андроид на маке. Знаю, изврат. Ну-с, может, я в этом толк знаю?
).
Думаю, что сам процесс и последовательность шагов с перечнем всего необходимого для развертывания андроид проектов на мавене в абсолютно любой ОС никого не заинтересует (в общем как и весь этот пост), да и при сильном желании нагуглить можно все, что угодно.
Но меня сегодня весь день плющит от некоторых мыслей, которые я хочу оставить и здесь тоже. Частично потому, что таким образом я буду косвенно ругаться на винду. Частично просто.. мало ли кто тут ходит.
Данные подсказки и мысли собраны здесь для того, чтобы уберечь меня и случайного читателя от долгого, бессмысленного и беспощадного гугленья в поисках решения несуществующих проблем. В общем, большая часть написанного итак очевидна и понятна любому адекватному человеку, но тем не менее иногда почему-то не выполняется, и люди путаются в странных непонятных ошибках, находят жуткие решения, пугаются и не знают что предпринять. А ларчик зачастую открывается просто и легко.
Итак, Аня, если ты еще раз соберешься заниматься всякой дуростью, помни пару моментов.
1. Храним верность шестой Жабе. (Этот пункт еще может будет неактуален)
Я понимаю, седьмая-последняя это круто. Но андроид-проекты все же пока стоит собирать шестой. На всякий случай. У меня в итоге стоят обе, в качестве jdk для конкретного проекта указана шестая, а вот в виндовой консоли работает седьмая версия (JAVA_HOME указывает на седьмую). На всякий случай.
2. Работаем под рутом. (печаль-беда)
В Винде это называется Run as Administrator (вызывается из контекстного меню правой кнопкой, надеюсь, все в курсе). Именно запуск под админом заставил мою студию все же увидеть собственную-скаченную сдк. И именно это простое действие заставило мой Мавен в итоге заработать как надо, а не как идиот
И, кстати, помните, что КОНСОЛЬ ТОЖЕ МОЖНО ЗАПУСТИТЬ ПОД АДМИНОМ! Это вообще первое, что нужно сделать, когда что-то вдруг начинает ломаться
3. Не забываем догружать драйвера.
Опять же. Может, мне сильно повезло - под макосом я не качала драйверов ни под один девайс. У меня все распознавалось. Само. Драйвера можно скачать через sdk, вместе с необходимыми апишками. Там снизу, в разделе extras. У меня были скачены (мне нужен был дефолтный гугловский)
4. Не забываем ставить драйвера.
Как по мне, делается это довольно хитро. С припереподвыподвертом, я бы сказала. Но нагугливается все элементарно. (А под маком все само становилось!!! Честно-честно!). Если девайс распознался - радуемся и пляшем.
5. Грузим мавен в диск С. (А в маке мавен уже есть!!!)
Вообще я где-то читала, что он должен лежат там по какому-то путии... не знаю.
Ошибок, связанных с этим, мне встретить не довелось, но предпочитаю, чтобы такая шибко кросплатформенная штука все же лежала в папке, путь к которой не содержит пробелов. Вот сердцу легче, чесслово. Я просто распаковала в диск, и мне не стыдно.
P.S. Мне тут "из-за спины" подсказали, что вроде как мавен вообще идет прямо со студией. Ну может быть, может быть, но не сносить же мне теперь свой! (Вот, кстати, интересно, а с каким я работала на маке? С тем, что уже стоял, или с тем, что пришел со студией? Стоял-то он до того, я проверяла. Значит, и переменные должны были быть.. а ладно пофигу)
6. Убедись, что все на месте.
Перед тем, как пытаться че-то делать, проверяем, установлены ли переменные среды:
JAVA_HOME (путь к жабе)
M2_HOME (путь к мавену)
M2 (%M2_HOME%\bin)
ANDROID_HOME (путь к android-sdk)
Ах, да.. в Path еще из этого нужно добавить m2 и путь к бинам жабы. (Так, вроде ничего не забыла)
7. Если студия не запустилась
Если Android-studio не стартует из меню пуск, нужно попробовать открыть ее из папки. Вообще лучше всегда открывать ее из папки. И под рутом. Да.
8. Если студия не видит SDK по правильному пути
Закрываем студию и запускаем ее под админом. И больше не забываем. )))
9. Не забываем настроить гитхаб
Лучше сделать это сразу и проверить соединение. Чтобы потом не думать. А, в принципе, можно и из консоли гонять.. (под рутом!
)
10. Основное. java.util.zip.ZipException: invalid LOC header (bad signature)
Если после написания первого теста и попытки запуска этого дела как maven project в студии (mvn clean install, mvn test и.т.д. в консоли) вдруг вылезла такая бяка, то первое и самое правильное - это не гуглить и радоваться, что, оказывается, еще куча народу наступала на эти же грабли и что-то не видно особо решений, а... удалить папку M2.
Папка находится по адресу С:\Имя_пользователя\ (по крайней мере у меня там лежала). Я долбанула ее всю, хотя наверное можно было попытаться там поковыряться. После этого нужно запустить все еще раз.
Суть в том, что, скорее всего, мавенчик почему-то неудачно скачал какой-то там файл, ну и.. вот теперь сам же хрипит, задыхается, а сделать ничего не может. После удаления папки он его перекачает (вместе с тучей всего остального), и заработает как надо.
В процессе поиска решения по этой ошибке я видела где-то робкую фразу об удалении папки, но она тонула за тучей пустых разговоров и предложений потрогать pom.xml. Который трогать вовсе не нужно.
Собственно, все. Пока что. Может, я завтра с утра еще что вспомню?
З.Ы. Насчет эпиграфа. В комментах к нему кто-то высказался, что у большинства на самом деле происходит ADD (Ass Driven Development).
Хм.. печально, но стоит задуматься.
UPD. Кстати насчет рутов. Это ведь чтобы писать в папки на диске С нужны какие-то права.. мне тут закралась крамольная мысль, что если бы я все эти дела ставила на диск Д? Впрочем, студия сама на С становится... но мысль интересная. Если кто проверял, скажите!
В общем, пока мой мак от меня временно уехал, решила я освоить поставленный мне больше полугода назад и шибко мощный, судя по причмокивающему жесту админа, виндовый комп. (Не спрашивайте, почему до этого я разворачивала девелопмент под андроид на маке. Знаю, изврат. Ну-с, может, я в этом толк знаю?

Думаю, что сам процесс и последовательность шагов с перечнем всего необходимого для развертывания андроид проектов на мавене в абсолютно любой ОС никого не заинтересует (в общем как и весь этот пост), да и при сильном желании нагуглить можно все, что угодно.
Но меня сегодня весь день плющит от некоторых мыслей, которые я хочу оставить и здесь тоже. Частично потому, что таким образом я буду косвенно ругаться на винду. Частично просто.. мало ли кто тут ходит.
Данные подсказки и мысли собраны здесь для того, чтобы уберечь меня и случайного читателя от долгого, бессмысленного и беспощадного гугленья в поисках решения несуществующих проблем. В общем, большая часть написанного итак очевидна и понятна любому адекватному человеку, но тем не менее иногда почему-то не выполняется, и люди путаются в странных непонятных ошибках, находят жуткие решения, пугаются и не знают что предпринять. А ларчик зачастую открывается просто и легко.
Итак, Аня, если ты еще раз соберешься заниматься всякой дуростью, помни пару моментов.
1. Храним верность шестой Жабе. (Этот пункт еще может будет неактуален)
Я понимаю, седьмая-последняя это круто. Но андроид-проекты все же пока стоит собирать шестой. На всякий случай. У меня в итоге стоят обе, в качестве jdk для конкретного проекта указана шестая, а вот в виндовой консоли работает седьмая версия (JAVA_HOME указывает на седьмую). На всякий случай.
2. Работаем под рутом. (печаль-беда)
В Винде это называется Run as Administrator (вызывается из контекстного меню правой кнопкой, надеюсь, все в курсе). Именно запуск под админом заставил мою студию все же увидеть собственную-скаченную сдк. И именно это простое действие заставило мой Мавен в итоге заработать как надо, а не как идиот

И, кстати, помните, что КОНСОЛЬ ТОЖЕ МОЖНО ЗАПУСТИТЬ ПОД АДМИНОМ! Это вообще первое, что нужно сделать, когда что-то вдруг начинает ломаться
3. Не забываем догружать драйвера.
Опять же. Может, мне сильно повезло - под макосом я не качала драйверов ни под один девайс. У меня все распознавалось. Само. Драйвера можно скачать через sdk, вместе с необходимыми апишками. Там снизу, в разделе extras. У меня были скачены (мне нужен был дефолтный гугловский)
4. Не забываем ставить драйвера.
Как по мне, делается это довольно хитро. С припереподвыподвертом, я бы сказала. Но нагугливается все элементарно. (А под маком все само становилось!!! Честно-честно!). Если девайс распознался - радуемся и пляшем.
5. Грузим мавен в диск С. (А в маке мавен уже есть!!!)
Вообще я где-то читала, что он должен лежат там по какому-то путии... не знаю.
Ошибок, связанных с этим, мне встретить не довелось, но предпочитаю, чтобы такая шибко кросплатформенная штука все же лежала в папке, путь к которой не содержит пробелов. Вот сердцу легче, чесслово. Я просто распаковала в диск, и мне не стыдно.
P.S. Мне тут "из-за спины" подсказали, что вроде как мавен вообще идет прямо со студией. Ну может быть, может быть, но не сносить же мне теперь свой! (Вот, кстати, интересно, а с каким я работала на маке? С тем, что уже стоял, или с тем, что пришел со студией? Стоял-то он до того, я проверяла. Значит, и переменные должны были быть.. а ладно пофигу)
6. Убедись, что все на месте.
Перед тем, как пытаться че-то делать, проверяем, установлены ли переменные среды:
JAVA_HOME (путь к жабе)
M2_HOME (путь к мавену)
M2 (%M2_HOME%\bin)
ANDROID_HOME (путь к android-sdk)
Ах, да.. в Path еще из этого нужно добавить m2 и путь к бинам жабы. (Так, вроде ничего не забыла)
7. Если студия не запустилась
Если Android-studio не стартует из меню пуск, нужно попробовать открыть ее из папки. Вообще лучше всегда открывать ее из папки. И под рутом. Да.
8. Если студия не видит SDK по правильному пути
Закрываем студию и запускаем ее под админом. И больше не забываем. )))
9. Не забываем настроить гитхаб
Лучше сделать это сразу и проверить соединение. Чтобы потом не думать. А, в принципе, можно и из консоли гонять.. (под рутом!

10. Основное. java.util.zip.ZipException: invalid LOC header (bad signature)
Если после написания первого теста и попытки запуска этого дела как maven project в студии (mvn clean install, mvn test и.т.д. в консоли) вдруг вылезла такая бяка, то первое и самое правильное - это не гуглить и радоваться, что, оказывается, еще куча народу наступала на эти же грабли и что-то не видно особо решений, а... удалить папку M2.
Папка находится по адресу С:\Имя_пользователя\ (по крайней мере у меня там лежала). Я долбанула ее всю, хотя наверное можно было попытаться там поковыряться. После этого нужно запустить все еще раз.
Суть в том, что, скорее всего, мавенчик почему-то неудачно скачал какой-то там файл, ну и.. вот теперь сам же хрипит, задыхается, а сделать ничего не может. После удаления папки он его перекачает (вместе с тучей всего остального), и заработает как надо.
В процессе поиска решения по этой ошибке я видела где-то робкую фразу об удалении папки, но она тонула за тучей пустых разговоров и предложений потрогать pom.xml. Который трогать вовсе не нужно.
Собственно, все. Пока что. Может, я завтра с утра еще что вспомню?
З.Ы. Насчет эпиграфа. В комментах к нему кто-то высказался, что у большинства на самом деле происходит ADD (Ass Driven Development).

UPD. Кстати насчет рутов. Это ведь чтобы писать в папки на диске С нужны какие-то права.. мне тут закралась крамольная мысль, что если бы я все эти дела ставила на диск Д? Впрочем, студия сама на С становится... но мысль интересная. Если кто проверял, скажите!