• ,

Простое переключение между версиями JavaRush

Как известно, создатели проекта, пошли на безпрецидентный шаг и «услышав» голос учащихся, а по сути заказчиков(коллективный разум), все-таки вернули первую версию(прежде всего предсказуемую). В связи с этим возникает новая проблема: тем, кто хочет делать задачи в первой версии и пробовать силы(дебажить) в новой. Как же сделать переход с одной версии на другую более комфортно? Все-таки каждый раз править файл hosts и искать подходящий плагин не очень удобно, да и отнимает время.
Вот, и я озадачился этой проблемой, вспомнил о выполняемых файлах в Windows. Посидев вчера ночью в «тырнете», нашел необходимую информацию. В итоге на рабочем столе имеется две пиктограммы с сылками на bat-файлы. Когда мне необходимо запустить нужную версию, я просто кликаю по соответствующему ярлыку и выбираю соответствующий проект(рисунок 4).
Вот несколько изображений как это выглядит:

1.Содержимое but-файлов

bat fails

2.Содержимое пиктограмм



3.Папка Пользователя где сожержится текущий плагин

Мои документы

4.Выбираем папку с соответствующим проектом

project

5.Создаем константы в «ПЕРЕМЕННЫХ СРЕДАХ»

properties

6.Пример файлов hosts

hosts

Поскольку командная строка не любит кирилицу, да и для понимания значений путей, которые указаны в файлах, я создал соответственные константы(рисунок 5), которые в bat-файле окружены двумя знаками процента, например: %constant%. Пробелы так же коммандная строка не воспринимает, потому нужно заключать их в двойные кавычки: "". bat-файлы у вас будут такие же, как у меня, если используете IDEA для 64-разрядной Windows. А в константах указываете соответственный путь к необходимым файлам. Перед первым запуском, я удалил плагины(рисунок 3) «JavaRush» с «Моих документов», чтобы там всегда был файл с одинаковым названием "IdeaPlugin.jar".

P.S.: Так же обязательно, чтобы применились измения hosts-файла, bat-файлы нужно запускать с правами «Администратора», либо «поправить» в файле полный доступ для текущего пользователя.

31 комментарий

pro_moscow
для mac есть решение?
BondXXL
  • BondXXL
  • 0
  • Комментарий отредактирован 2017-02-14 02:59:12 пользователем BondXXL
Не юзаю. Но должно быть аналогичным образом. Суть в том, чтобы копировать в нужные папки нужные файлы. То есть попробовать с консоли это все сделать, а далее сохранить команды в выполняемый файл.
rembrand87
Спасибо большое за подсказку, как-то сам не догадался так сделать )))
Siy
  • Siy
  • 0
а плагин сам нужной версии в идеа подтягивается?
BondXXL
  • BondXXL
  • 0
  • Комментарий отредактирован 2017-02-18 19:27:54 пользователем BondXXL
Новый плагин закидываете в папку, например, JavaRush2. А ссылку на папку указываете в «переменном окружении», например «javarush2». В bat-файле пишите команду «copy /y» и указываете путь к файлу в таком виде: "%javarush2%\JavaRushIdeaPlugin.jar". Ставите пробел, указываете путь с названием архива(такое как в первой весии), куда копировать: "%plugin%\IdeaPlugin.jar". Где «plugin» — это константа-путь в переменном окружении, которая указывает на папку, откуда Idea будет брать плагин, например, «C:\Мои документы\user\.IdeaIC2016.3\config\plugins»
Siy
Запускать бат с ком.строки? Но мой бат не прорабатывает весь…
copy /y %javaPlugin2%\JavaRushIdeaPlugin.jar %java_plugin2%\IdeaPlugin.jar
copy /y %hosts%\hosts2 %windir%\System32\drivers\etc\hosts
start%intellij2%\idea64.exe

-1я строка пишет скопировано
-2я что нет доступа, хотя вродь открыла… может где провтык?
адрес %hosts%
C:\Windows\System32\drivers\etc

там находятся два файла hosts1 и hosts2, которые и должны копироваться в обычный hosts

-3я ругается на путь… уже пробелы взяла в " ", результат отрицательный((
C:\Program" "Files" "(x86)\JetBrains\IntelliJ" "IDEA" "Community" "Edition" "2016.3.4\bin

Как же таки справиться)) есть еще идеи-корректировки?
Заранее спасибо!!!))
BondXXL
  • BondXXL
  • 0
  • Комментарий отредактирован 2017-02-19 03:45:08 пользователем BondXXL
По поводу доступа я написал. Там нужно права поменять(добавить полный доступ текущему пользователю), в самом файле hosts, либо запускать коммандную строку с правами администратора.
В третьей строке, возможно, у вас после start, нет пробела.
У меня путь к идее такой:
<code><span class="pln">D</span><span class="pun">:\</span><span class="typ">JetBrains</span><span class="pun">\</span><span class="typ">IntelliJ</span><span class="str">" "</span><span class="pln">IDEA</span><span class="str">" "</span><span class="pln">Community</span><span class="str">" "</span><span class="pln">Edition</span><span class="str">" "</span><span class="lit">2016.3.4</span><span class="pun">\</span><span class="pln">bin</span></code>
BondXXL
  • BondXXL
  • 0
  • Комментарий отредактирован 2017-02-19 04:32:57 пользователем BondXXL
D:\JetBrains\IntelliJ" "IDEA" "Community" "Edition" "2016.3.4\bin
Siy
  • Siy
  • 0
  • Комментарий отредактирован 2017-02-21 12:57:17 пользователем Siy
Спасибо ОГРОМНОЕ!!! Таки да, провтыкала пробел после start)) пиктограммки версий плагина меняются и в идее 2016.3.4 и в 2016.2.4.
.bat ссылка с раб стола от администратора запускается… но не всегда авторизируется новый плагин, точнее нет)) «Ошибка во время логина. Убедитесь в доступности сети и попробуйте снова.»
Меняла батники под разные версии идеи, и таки безпроблемно запускается старый плагин, но новый какой-то вредный… Не понимаю, что ему надо, чтоб запуститься-авторизироваться. И пока не выяснила, в какой момент удается его авторизировать и увидеть задачи))
Есть идеи?=))
Опять спасибо!!!=))
Я пока что у Вас побуду жителем блога, не против?)
BondXXL
Наоборот. Тема, ведь, для решения проблем. А вы точно скачали самый новый плагин?
BondXXL
Новый запускается так же, как и старый. Но. Сначала нужно закрыть Idea, а затем запустить другой bat или ярлык.
Siy
старый плагин версии 2.2, новый 2.58.
Кстати сайт сейчас открывается в старом виде, видимо что-то редактируют)
И да, именно после закрытия Идеи запускаю нужный бат…
BondXXL
если в старом, значит новый плагин не скопировался. Нужно копировать именно в старое название. То есть название меняется при копировании.
BondXXL
  • BondXXL
  • 0
  • Комментарий отредактирован 2017-02-21 23:04:58 пользователем BondXXL
Вернее так:
если в старом, значит новый hosts не скопировался. А плагин нужно копировать именно в старое название. То есть название меняется при копировании.

достаточно проверить в командной строке ip:
tracert javarush.ru
Siy
проверила батники сейчас по несколько раз… результат тот же: на старый спокойно переключается и показывает задачи, на новый переключается, но выдает ошибку...((
сделала трасировку… старый запускается по ИП 93…
новый по 217…
Изменила файл хостс для нового плагина и теперь при запуске батника в обычный хостс вместо 93.190.137.51 javarush.ru записывается 217.23.15.53 javarush.ru.
НО результат не изменился( где-то спряталась лажа… но вот где же…
Пыталась лог смотреть Идеа… для меня это дремучий лес))
Siy
и при запуске то одного, то другого батника сайт открывается соответственно в старом или в новом варианте :) так что копируется)
BondXXL
Хорошо. Что не работает? hosts копируется. А при запуске нового, продолжает работать старый плагин? Значит плагин не установился. Нужно почистить папку от плагинов в «Мои документы». И копировать соответственный плагин при запуске. Обязательно название плагина должно быть одинаковым при копировании в «Мои документы». В v1: ...IdeaPlugin.jar копируется в ...IdeaPlugin.jar. В v2: ...JavaRushIdeaPlugin.jar в ...IdeaPlugin.jar
Siy
Утра БоБрого!=) Что я могу сказать — РАБОТАЕТ!!!) Оба!
Почистила папки плагинов, скачала последней версии плагин и теперь всё гуд!
Победили! Огромнейшее спасибо!!!!=)
Siy
  • Siy
  • 0
А еще сделала более удобный вариант переключения между плагинами=))
Ставим две Идеи 2016.3.4 и 2016.2.4
Один .bat файл прописываем под запуск и копирование плагина в IDEA 2016.2.4, а второй батник с другим плагином в IDEA 2016.3.4.
Таким образом при двух открытых IDEA, в каждой из которых открыт нужный проект(например, в IDEA 2016.2.4 проект JavaRushHomeWork, а в IDEA 2016.3.4 проект JavaRushTasks) легким нажатием (запуском) нужного батника мы получаем работающий плагин и задачи)) И не нужно открывать и закрывать Идею))))
BondXXL
Это хорошо, но не забывайте, что файл hosts всего один.
Siy
Это дааа)) но даже если забыть переключиться батником, то выдаст ошибку)))
BondXXL
На рабочем столе я оставил три ярлыка: Два — это ссылки на выполняемые файлы bat, а третий — на саму Idea, чтобы лишний раз не было перезаписей(критично для SSD диска) файла. Еще бы перенести папку с «Мои документы» на другой диск и заставить Idea «смотреть» туда — будет вообще здорово.
Siy
Плагины у меня живут на Д, т.е.оттуда копируются, да и проекты тоже на Д, а вот сама Идея(точнее две) установлена на С.
Siy
Мне немножко непонятна фраза «чтобы лишний раз не было перезаписей»… Но плагин то каждый раз перезаписывпется, при запуске бат. Или я не о том думаю?))
BondXXL
SSD диски более быстрые, их ставят сейчас восновном для ОС. И у них ограничен ресурс перезаписи данных, как и у всех флеш.
Siy
Агаа, вот оно что) Спасибо! Буду знать=)
MaxST1994
А переводы скриншотов с хохлiвского есть?
MaxST1994
Ничего не понятно, можно с комментариями? Что за соответствующий проект, какие пути в path прописывать, где эти примеры файлов hosts должны находиться и тд.
BondXXL
Поделился со своего компа, так, что, принимайте как есть. И так старался максимально описать что куда. Вот, у пользователя Siy можете спросить, как она устанавливала, у нее все получилось.
Siy
Денек добрый!) постараюсь скинуть))
Siy
  • Siy
  • +1
Переключение между версиями javarush для ленивых =))
Буду повторять что-то написанное BondXXL, но повторение — мать учения!)) Спасибо ему за это!)
И что-то будет мое)) Поехали!:
1) Ставим две IDEA и для удобства выкидываем ярлыки на панель иль раб стол.
У меня это: 2016.2.4 (и ни закакие плюшки не соглашайтесь ее обновлять, как только она станет 2016.3!!! открываться параллельно обе перестанут) и 2016.3.4 (ее обновлять можно).

2) Пишем два файла hosts (их имена например, hosts1 и hosts2). Сохраните где удобно, я прям там, где родной hosts положила.
C:\Windows\System32\drivers\etc
Они такие как и hosts, но
в hosts1 добавляем последней строку 93.190.137.51 javarush.ru
в hosts2 добавляем последней строку #93.190.137.51 javarush.ru

!!! Все изменения осуществляются от имени Администратора и мне удобно было файлы делать в Notepad++. Он шибко умный и предлагает сам вносить сохранения под Админом))))) но в чем писать, дело ваше))

3) Идем в переменные среды! Нам надо path
Панель управления\Система и безопасность\Система и выбираем Дополнительные параметры системы.
Тут в Переменные среды в Системные переменные создаем переменные (имена можно придумать свои):
— hosts и вставляем путь C:\Windows\System32\drivers\etc
— intellij1 и вставляем путь где лежит старая версия ИДЕА
у меня это: C:\Program" «Files» "(x86)\JetBrains\IntelliJ" «IDEA» «Community» «Edition» «2016.2.4\bin
Не забудьте в ковычки взять пробелы
— intellij2 и вставляем путь где лежит последняя версия ИДЕА
— java_plugin1
C:\Users\ВЫ\.IdeaIC2016.2\config\plugins
— java_plugin2
C:\Users\ВЫ\.IdeaIC2016.3\config\plugins
— javaPlugin1
и путь где хранится Ваш скачанный с джавараш плагин первой версии
у меня тут
D:\JAVA\JavaRushIdeaPlugin\lib
— javaPlugin2
и путь где хранится Ваш скачанный с джавараш плагин САМОЙ ПОСЛЕДНЕЙ версии!!! это важно, т.к. из-за этого не работало, бо плагин был предпоследний))) лажа прям)

4) Пишем два .bat файла (напр, JavaRush и JavaRush2). Храним где удобно!!! Главное ссылки на рабочий стол не забудьте сделать)) И ЕЩЕ!!! Поменяйте в свойствах, чтоб запуск происходил тоже от имени администратора!
Мои баты выглядят так:

первый:
copy /y %javaPlugin1%\IdeaPlugin.jar %java_plugin1%\IdeaPlugin.jar
copy /y %hosts%\hosts1 %windir%\System32\drivers\etc\hosts
start %intellij1%\idea64.exe

второй:
copy /y %javaPlugin2%\JavaRushIdeaPlugin.jar %java_plugin2%\IdeaPlugin.jar
copy /y %hosts%\hosts2 %windir%\System32\drivers\etc\hosts
start %intellij2%\idea64.exe

5) НАСЛАЖДАЙТЕСЬ: легким щелчком по одному ярлыку бат-файла у вас открывается одна ИДЕА и работает напр старый плагин, а нажатием на другой ярлык откроется и будет работать новая версия ИДЕА и Джавараш)) В целом, это всё! и не обязательно закрывать ИДЕА, просто поработав в одной версии, сделав задание его отправляете на проверку под одним плагином, а потом скопировав в другую ИДЕА код и вставив в нужный проект — просто клацнув по нужному бату получите доступ, возможность отправить на проверку код под другим плагином)
Удачи!
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.