Рейтинг темы:
  • 1 Голос(ов) - 5 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
JDT Compiler for J8 (ECJ)
#1
-[deleted]-
m0nster.art - clear client patches, linkz to utils & code.
Гадаю по капче.
Ответ
#2
Что вы подпилили-то ? Компил под явку 7 и 8 ? Если да, то не легче просто обновить jdt, ведь он давно поддерживает компил под 7 (насчет 8 не знаю) ?
Ответ
#3
GabberBaby Написал:Что вы подпилили-то ? Компил под явку 7 и 8 ? Если да, то не легче просто обновить jdt, ведь он давно поддерживает компил под 7 (насчет 8 не знаю) ?

Там была трабла, что он не хотел компилировать под J7 (возможно я слишком туп) при установленных флагах javac'у. Я сделал включение JDT'шных флагов в настройку, не более.
Есть другие версии? С удовольствием перестану заниматься хренью, если подскажешь.

P.S: у меня IDE криво слила их J8 бранч (да еще каким-то образом удачно скомпилировала его!), поэтому в мастер-ветке полная хренотень.
m0nster.art - clear client patches, linkz to utils & code.
Гадаю по капче.
Ответ
#4
Pointer*Rage Написал:Там была трабла, что он не хотел компилировать под J7 (возможно я слишком туп) при установленных флагах javac'у. Я сделал включение JDT'шных флагов в настройку, не более.
Есть другие версии? С удовольствием перестану заниматься хренью, если подскажешь.

Флаги обычные: final List<String> options = ImmutableList.of("-Xlint:all", "-warn:none", "-g", "-1.7");
ecj использую 4.3.1. Код компилится и выполняется стабильно. Но это под явку 7.

Pointer*Rage Написал:P.S: у меня IDE криво слила их J8 бранч (да еще каким-то образом удачно скомпилировала его!), поэтому в мастер-ветке полная хренотень.

Скоро эклипс релизнет ecj 4.4, который сможет компилить под явку 8, так что не вижу смысла самому пилить поддержку новой явки.
Ответ
#5
GabberBaby Написал:Флаги обычные: final List<String> options = ImmutableList.of("-Xlint:all", "-warn:none", "-g", "-1.7");
ecj использую 4.3.1. Код компилится и выполняется стабильно. Но это под явку 7.



Скоро эклипс релизнет ecj 4.4, который сможет компилить под явку 8, так что не вижу смысла самому пилить поддержку новой явки.

Уже запилил. Точнее они запилили, я просто обновил свою версию и кое-где пошаманил. M4 версия, если что.

ЗЫ: именно таким способом и пробовал. Не хотел компилировать, пришлось насильно увеличивать энум сеты компилира и проставлять версии.

P.S: уехал, посты не могу читать до вечера, заодно убрал кривоту, нормально синхронизировал.
m0nster.art - clear client patches, linkz to utils & code.
Гадаю по капче.
Ответ
#6
С компилятором ecj столкнулся неудобством, после версии 3.6 резко начал медленно компилировать, обычно 70-80сек старт, с 3.7+ 300+сек кто-то сталкивался?
Ответ
#7
Visor Написал:С компилятором ecj столкнулся неудобством, после версии 3.6 резко начал медленно компилировать, обычно 70-80сек старт, с 3.7+ 300+сек кто-то сталкивался?

У меня все ок, 800 классов разной тяжести. Мб профайлером попробовать пройтись?

P.S: тред неактуален. ECJ запилили нормальный *но для меня все равно загадка, почему на прошлой версии он не хотел под J7 компилировать, что аж пришлось его править*
m0nster.art - clear client patches, linkz to utils & code.
Гадаю по капче.
Ответ
#8
Pointer*Rage Написал:У меня все ок, 800 классов разной тяжести. Мб профайлером попробовать пройтись?
Дело в том, что после ECJ 3.6 - а пробовал на всех подряд начиная от 3.3.1 до 4.3.1 на 1.6 компиляторе те же классы вдруг резко начинает тормозно компилировать (резко в 4 раза дольше), между 3.5 и 3.6 дольше на пару процентов. Пока решения не нашел - интересно ...

Взять можно тут, чтобы не забыть, не реклама
http://grepcode.com/project/repo1.maven....piler/ecj/
http://mvnrepository.com/artifact/org.ec...mpiler/ecj
http://www.java2s.com/Code/Jar/e/Downloadecj362jar.htm
Ответ
#9
Зачем вам вообще компилеры в ядре? Ради Hot-прогрузки скриптов? Какой админ в здравом уме будет ребутить скрипты на лайв сервере?
Для разработки\дебага в jvm уже давно есть какая-никакая лайв-догрузка изменений java->class-in-memory (или вы каждый раз, когда вносите изменения в core перебилживаете весь сервер? о_О)

Для себя выбрали путь"все в одном", скрипты в ядре - время компила 10.5 Мб ядра на древней офисной тачке 30 секунд. Да, знаю, немодульно, немейнстримно, неаспектноориентировано(wat?) и т.п. - но мне нраиииицо.
Ответ
#10
Visor Написал:Дело в том, что после ECJ 3.6 - а пробовал на всех подряд начиная от 3.3.1 до 4.3.1 на 1.6 компиляторе те же классы вдруг резко начинает тормозно компилировать (резко в 4 раза дольше), между 3.5 и 3.6 дольше на пару процентов. Пока решения не нашел - интересно ...

Взять можно тут, чтобы не забыть, не реклама
http://grepcode.com/project/repo1.maven....piler/ecj/
http://mvnrepository.com/artifact/org.ec...mpiler/ecj
http://www.java2s.com/Code/Jar/e/Downloadecj362jar.htm

Возможно стоят какие-то флаги, которые влияют очень сильно на время компиляции? (хотя я ни один не могу припомнить такой, только если не начинается работа за JIT в виде инлайна и других вещей).

Еще немного ссылок:
JDT Source: git
JDT Project releases
m0nster.art - clear client patches, linkz to utils & code.
Гадаю по капче.
Ответ


Перейти к форуму:


Пользователи, просматривающие эту тему: 1 Гость(ей)